我有一个名为 showStuff() 的函数,我想在初始化期间调用一次,然后在选择字段更改时再调用一次。我需要将类或 id 名称传递给函数,但这不起作用:
$('.filterChange').change($('#htmlElement'), showStuff);
我究竟做错了什么?解决方法是在更改时调用通用函数,然后从那里调用 showStuff() 但我不明白为什么更改触发器不起作用。.bind 触发器也有同样的问题。
我有一个名为 showStuff() 的函数,我想在初始化期间调用一次,然后在选择字段更改时再调用一次。我需要将类或 id 名称传递给函数,但这不起作用:
$('.filterChange').change($('#htmlElement'), showStuff);
我究竟做错了什么?解决方法是在更改时调用通用函数,然后从那里调用 showStuff() 但我不明白为什么更改触发器不起作用。.bind 触发器也有同样的问题。
下面是如何将数据传递给事件的基本知识:
function greet(event) { alert("Hello "+event.data.name); }
$("button").on("click", { name: "Karl" }, greet);
$("button").on("click", { name: "Addy" }, greet);
您应该将其作为 Map 传递,因为这是公认的语法。
$('.filterChange').change({'myelement': $('#htmlElement')}, showStuff);
function showStuff(e) {
$(e.data.myelement.show());
}
我认为你想要的是一个简单的内部函数,如下所示,
$('.filterChange').change(function () {
showStuff($('#htmlElement'));
}).change(); //trigger during init or simply call showStuff($('#htmlElement'))