jQuery动态生成的文本框行为不正确

时间:2010-10-21 14:58:23

标签: jquery cross-browser dynamically-generated

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

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弹出窗口内,该弹出窗口显示页面上已有的内嵌内容。唯一的动态部分是用文本框替换列值。

2 个答案:

答案 0 :(得分:1)

我尝试将文本框添加到div中,文本框正常工作。亲自看看:http://jsbin.com/inapo4。可能是item.find()无法正常工作吗? “item”只是一个jQuery对象吗?

答案 1 :(得分:0)

发现问题,就是Fancybox本身。由于事件监听器,箭头导航被搞砸了。假定在1.3.2中修复。

Source