0

我有一个非常复杂的方法绑定到页面上的所有输入。但是,有时输入会动态添加到页面中,因此不会绑定到相同的方法。我认为我可以通过将事件绑定到变量并在将它们添加到页面时使用附加输入更新变量来变得聪明......但没有。

IE

inputs.click(function(){ // stuff });

// add inputs to page

inputs = $('input');

有没有更隐秘的方法来做到这一点?OBV我可以将整个shebang($('input').click()...)放入一个函数中并以这种方式重新初始化......但肯定有更好的方法吗?

4

1 回答 1

1

您必须将事件绑定到页面上已经存在的元素,因此使用on()并绑定到页面上已经存在的动态输入的最近祖先,例如表单本身:

$('form').on('change', 'input', function() {
    // do something
});

第一个字符串是一个以空格分隔的事件列表,第二个是一个 jQuery 选择器,用于标识事件的目标(如果不是事件form本身)。

参考:

于 2012-11-22T06:52:32.707 回答