此代码不起作用
jQuery.each(["Alloggio","Macchina","Aereo","Treno"], function(){
t = this;
$("#ChkPrenotazione" + t + "Default").change(function(){
$(".Chk" + t).val($(this).val());
});
});
我希望改变事件的内心等于“Alloggio”或“Macchina”或“Aereo”或“Treno”
我该如何解决?
感谢
答案 0 :(得分:1)
您需要在本地存储t
。这可以通过闭包来完成:
jQuery.each(["Alloggio","Macchina","Aereo","Treno"], function(){
$("#ChkPrenotazione" + this + "Default").change((function(t){
return function() {
$(".Chk" + t).val($(this).val());
};
})(this));
});
这里我们使用函数function(t) { … }
返回一个带有相应this
的函数。这是通过使用this
作为t
的参数调用该函数来完成的。