gpt4 book ai didi

javascript - 元素构建时触发 jQuery 更改事件

转载 作者:行者123 更新时间:2023-11-28 13:45:48 25 4
gpt4 key购买 nike

我正在使用 jQuery 构建一些动态选择列表。当它们发生变化时,我希望该事件触发一个函数来刷新数据。

var selector    =   $('<select id="myid" />');
selector.append($('<option value>Option Placeholder</value>'));
// attach onChange event to select list
selector.bind('change', doUpdate(this));

我的问题是每次构建选择列表时都会触发 change 事件。我不确定触发器是如何发生的 - 我希望它仅在发生更改时触发 change 事件!

http://jsfiddle.net/TPuwc/

最佳答案

当你这样做时:

selector.bind('change', doUpdate(this));

您期望发生的是绑定(bind)事件处理程序来执行 doUpdate函数,传递this作为一个论点。

事实并非如此。相反,它正在做的是调用 doUpdate(this)立即,然后尝试将该函数调用返回的值设置为 change 的事件处理程序事件。

您可以简单地执行以下操作:

selector.bind('change', doUpdate);

jQuery 将处理 this 的值对于您来说(它将是触发事件的元素),因此您不需要将其作为参数传递给函数。

关于javascript - 元素构建时触发 jQuery 更改事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14506248/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com