c# – 如何在ASP.NET MVC中实现插页式“加载…”页面?
发布时间:2020-12-15 04:25:50 所属栏目:百科 来源:网络整理
导读:我有一个SearchController,其动作可以执行一些长时间运行的搜索并返回结果页面.搜索可能需要1到60秒.搜索的URL是以下格式的HTTP GET请求:http:// localhost / Search?my = query is = fancy 我正在寻找的体验类似于那里的许多旅游网站.我想展示一个中间的
我有一个SearchController,其动作可以执行一些长时间运行的搜索并返回结果页面.搜索可能需要1到60秒.搜索的URL是以下格式的HTTP GET请求:http:// localhost / Search?my = query& is = fancy
我正在寻找的体验类似于那里的许多旅游网站.我想展示一个中间的“正在加载……”页面,理想情况是: >用户可以重新加载页面而无需重新启动搜索 这些都是不错的选择.我对所有想法持开放态度!谢谢. 解决方法
您可以通过以下方式执行此操作:
>使用AJAX执行搜索请求(GET URL) 使用jquery的示例: <div id="loading" style="display: none"> Loading... </div> <a href="javascript:void(0);" onclick="searchFor('something')">Search for something</a> <script type="text/javascript"> function searchFor(what) { $('#loading').fadeIn(); $.ajax({ type: 'GET',url: 'search?query=' + what,success: function(data) { location.href = data.ResultsUrl; } }); } </script> (编辑:) 控制器将是这样的: public class SearchController { public ActionResult Query(string q) { Session("searchresults") = performSearch(); return Json(new { ResultsUrl = 'Results'}); } public ActionResult Results() { return View(Session("searchresults")); } } 考虑它伪代码:我实际上没有测试它. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |