问题:
我的 HTML 代码中有一些带有 options
的 select
,并且我设置了一个 on Change 事件处理程序
,以弄清楚何时选择将会改变。
以下代码显示了获取更改的 jQuery 代码:
$(document).on('change', '.anyHtmlSelect', updateState);
我有一个现有的 Javascript 函数,应该将其用作回调函数。
Javascript 函数如下所示:
function updateState(element)
{
var currentId = element.attr("id");
}
问题:
如何将更改选择
作为元素
?
我尝试过以下方法:
$(document).on('change', '.anyHtmlSelect', updateState($(this));
但它不起作用。
最佳答案
自动传递给事件处理程序的第一个参数是对事件本身的引用,而不是引发事件的元素。要访问触发事件的 DOM 元素,请使用 this
:
只需更改:
function updateState(element)
{
var currentId = element.attr("id");
}
至:
function updateState(event) {
var currentId = this.attr("id");
}
关于javascript - 在 jQuery.on() 事件调用的现有 Javascript 函数中使用 "this"作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44991179/