我是 jQuery 的新手。我认为 jQuery 可以操作由代码添加的元素是合理的,但我发现现在还不能。
$(function(){
$("#addVideo").click(function(){
$("#publisher").append("<div id='choseType'><input type='button' value='video'> <input value='music' type='button'> <input type='button' value='X'></div>");
})
$("#choseType input:eq(0)").click(function(){
$(this).addClass("selected");
})
})
是jquery的限制还是我的代码的错误?看来如果我把第二个click()
函数进入第一个它将正确运行,但它只会运行一次(如果我删除附加的#choseType
然后再次追加它,第二次单击将不起作用。)。那么如何操作代码添加的元素?谢谢!
将事件委托给非动态元素:
$(document).on('click', "#choseType input:eq(0)", function(){
$(this).addClass("selected");
});
而且ID是唯一的!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)