【发布时间】:2012-07-22 04:19:39
【问题描述】:
我创建了一个 MVC 应用程序,它使用 webgrids 在我的视图上显示数据。在我的网格工具栏中,我有下拉菜单、文本框和一个搜索按钮,它们调用 Jquery 来执行各种操作。例如,如果我单击搜索按钮,我会根据文本条目通过 Ajax 刷新网格。在与 webgrid(页面或排序)发生交互之前,这一切都很好。我们注意到,如果进行了任何 ajax 调用,那么排序和分页将不再起作用。此外,如果我先加载页面和页面或排序,那么我的 JavaScript 都不起作用。我一直在研究这个问题,但没有看到任何具体的解决方案。有人有解决方案的建议吗?
【问题讨论】:
-
我敢打赌你正在使用类似 $("#Sort").click(function(){}); 的东西将你的 jquery 处理程序附加到 document.ready 函数中。 -> 当您重新加载网格时,不会重新附加 jquery 处理程序。尝试使用类似这样的东西 $("#Sort").live('click', function(){});完全猜测,因为您没有发布代码。还建议您在 live() 处理程序上查找 jquery 文档。
-
谢谢你,Tommy,我在我的 jquery 中添加了处理程序,并在刷新网格时修复了我的 Javascript 函数。我还发现 Ajax 调用必须是一个 get,因为分页和排序使用查询字符串参数。这是一篇让我想到这个的帖子:stackoverflow.com/questions/9903420/…
-
我将评论移至下面的答案。如果我的 cmets 有帮助,请标记为已回答 :)
标签: ajax asp.net-mvc sorting paging webgrid