我通过JS在DOM上创建元素.问题是,如何为每个新创建的元素分配.change()函数?
.live()从性能的角度来看,甚至更好.delegate().这与以下方式的工作方式相同.live():它使用称为事件冒泡的东西,这意味着当在DOM元素上触发事件时,该元素的父级都会被通知该事件. delegate但是,它具有更好的语法和实质性的性能优势.
$('#parentElement').delegate('select.yourSelectClass', 'change', function() {
// do your processing here
});
Run Code Online (Sandbox Code Playgroud)
#parentElement可以是任何与select您要添加的所有元素的共同祖先元素匹配的选择器.这可能是document.body,但DOM树中可能还有另一个可以绑定的元素.
select.yourSelectClass表示只在具有该类的select元素上触发此处理程序yourSelectClass.您可以根据需要更改此选择器以使用任何其他jQuery选择器语法.