0

我有包含值的表列,当您单击编辑按钮时,我正在创建一个包含列值的文本框,有点像就地编辑功能。

var title = item.find('.co_edit_title').html("<input type='text' style='width:240px' name='title' value='" + item.find('.co_edit_title').text() + "' />");

工作正常,输入框显示提供的值。问题在于,在 FF、Chrome 和 Safari 中,文本框的行为不像通常那样。退格键可以正常工作,但正常的键盘功能不能。

例如,SHIFT + 箭头不突出显示字符,左右箭头键不左右移动光标。上下键出于某种原因左右移动光标。最后,在 IE 中除了退格键好像不在文本框中一样,还有这些相同的问题,它使浏览器返回一个页面。

关于为什么会发生这种情况的任何想法?

编辑:之前应该指出这一点,但所有这些都发生在 Fancybox 弹出窗口中,该弹出窗口显示页面上已经存在的内联内容。唯一的动态部分是用文本框替换列值。

4

2 回答 2

1

我尝试只是将一个文本框添加到一个 div 并且该文本框正常工作。在这里自己看看:http: //jsbin.com/inapo4。可能是 item.find() 无法正常工作吗?“项目”只是一个 jQuery 对象,对吧?

于 2010-10-21T15:25:22.120 回答
0

发现问题了,出在 Fancybox 本身。由于事件侦听器,箭头导航被搞砸了。应该在 1.3.2 中修复。

来源

于 2010-10-21T15:59:14.967 回答