使用带有动态添加元素的.on()时出现的问题

Problems Using .on() with Dynamically Added Elements

本文关键字:问题 on 动态 添加 元素      更新时间:2023-09-26

我读到.live()已经被弃用,我应该使用.on。但是.on似乎不适用于添加到DOM中的元素。

我的脚本添加了一个包含任意数量文本框(input type="text")的表,并且我希望在其中任何文本框中的内容发生更改时运行一些脚本。

这是我代码的一部分。vendorsPopUp引用了包含我的表的div。

$('input', vendorsPopUp).on('change', function (e) {
    alert($(this).attr('class'));
});

但当文本框中的内容发生更改时,此代码不会运行。

应该是这样的

$(vendorsPopUp).on('change', 'input', function (e) {
   alert($(this).attr('class'));
});