JQuery - 如何将change()函数绑定到动态创建的<select>?

Ton*_*ony 4 jquery

我通过JS在DOM上创建元素.问题是,如何为每个新创建的元素分配.change()函数?

lon*_*day 7

.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选择器语法.