我想绑定到元素函数,它接受几个参数。怎么做对了?
例如,我有功能:
function test(arg1, arg2, arg3) {
console.log("arg1:", arg1);
console.log("arg2:", arg2);
console.log("arg3:", arg3);
}
我希望将它绑定到ID为#btn
的元素,但所有参数都在数组中:
var array = ['Hello', ' my', ' world!'];
我该怎么做?我会尝试这样的事情:
$("#btn").bind("click", array, test);
有什么建议吗?
答案 0 :(得分:4)
你可以这样做:
var array = ['Hello', ' my', ' world!'];
$("#btn").bind("click", function() {
test.apply(null, array);
});
或使用$.proxy
方法添加参数:
$("#btn").bind("click", $.proxy.apply($.proxy, [test, null].concat(array)));
答案 1 :(得分:1)
关闭。
$('#btn').bind("click", function() { test('Hello', 'my', 'world'); });
或
$('#btn').bind("click", function() { test.apply(null, array); });
答案 2 :(得分:1)