我如何将外部范围内的变量发送给处理程序?
i = 1;
$(id).change(function() {myHandler(i)});
i = 2;
调用时,参数为2。
也尝试作为字符串,在DOM中起作用,但在jQuery中不起作用:
$(id).change('myHandler(' + i + ')');
最佳答案
假设您要传递数据对象,
var data = {i: 2};
$(id).change(data, myHandler);
在
myHandler
函数中:function myHandler(event) {
var i = event.data.i; // <= your data
}
该值将作为参数传递,如果以后修改将不会得到体现。