0
我已经设置了一个局部视图在索引页中进行渲染。当用户点击排序按钮时,局部视图会使用Ajax发送到服务器。这是因为整个页面不会刷新局部视图表。处理局部视图和javascript
问题出在第一次排序之后,索引页中的JavaScript不再有效。我通过将js放在局部视图本身来解决这个问题来解决这个问题,但是这会产生js错误来表示“继续”或“忽略”。
我已经设置了一个局部视图在索引页中进行渲染。当用户点击排序按钮时,局部视图会使用Ajax发送到服务器。这是因为整个页面不会刷新局部视图表。处理局部视图和javascript
问题出在第一次排序之后,索引页中的JavaScript不再有效。我通过将js放在局部视图本身来解决这个问题来解决这个问题,但是这会产生js错误来表示“继续”或“忽略”。
这是因为你新注入的元素(通过ajax)没有意识到事件有界。所以那些事件绑定对他们来说是不可用的。
你应该改变你的事件绑定使用on
,使其处理潮流元素和未来元素
例如(动态通过AJAX左右加入到DOM),如果你要处理的点击事件与CSS类someCssClassSelector
元件,
变化
$(".someCssClassSelector").click(function(){
//do something
});
到
$(document).on("click",".someCssClassSelector",function(){
//do something
});
该工作,如果我需要坚持'滚动'事件是可能的,那是需要坚持的另一个功能。我会更新这个问题。 – Rayshawn 2013-03-08 16:23:19
@RayEatmon:不要更新问题。作为一个新问题发布并提供相关详细信息 – Shyju 2013-03-08 16:24:18
我会这么做的。 – Rayshawn 2013-03-08 16:24:35