在ASP.NET-MVC
请求(Ajax
)之后,我正在加载部分页面(在Ajax.BeginForm
中。)
在该页面中,我有一些jQuery .on
处理程序,无法将其移至其他位置(因为它呈现了@Model属性;即它必须保留在该部分页面上):
$(document).on("click", "#test", function (e) {
var myVar = '@Model.MyVar';
// code
});
问题是:重新加载该部分后,单击#test
,它被调用了两次。如果我再次重新加载,它会被调用3次,依此类推。
因为每个ajax调用中的处理程序都是重复的。
是否可以删除以前的.on
(如果有)?还是要使其唯一?
答案 0 :(得分:1)
您只需要使用.off()
事件:
$(document).off("click", "#test");
$(document).on("click", "#test", function (e) {
var myVar = '@Model.MyVar';
// code
});