处理部分视图和JavaScript

时间:2013-03-08 16:15:24

标签: javascript ajax asp.net-mvc partial-views

我已经设置了一个部分视图来在索引页面中呈现。当用户单击排序按钮时,使用Ajax将部分视图发布到服务器。这样整个页面就不会刷新部分视图表。

问题出在第一次排序后,索引页面中的JavaScript不再有效。我通过将js放在局部视图本身来解决这个问题来解决这个问题,但这会产生js错误,说“继续”或“忽略”。

1 个答案:

答案 0 :(得分:2)

这是因为你新注入的元素(通过ajax)不知道有界的事件。所以那些事件绑定对他们来说是不可用的。

您应该更改事件绑定以使用on,以便它处理当前元素和未来元素(通过ajax动态添加到DOM)

例如,如果您要为css类为someCssClassSelector的元素处理 点击 事件,

更改

$(".someCssClassSelector").click(function(){
  //do something
});

$(document).on("click",".someCssClassSelector",function(){
  //do something
});