ASP.NET中控制器重定向到首页后如何显示指定提示弹窗
实现方案
第一步:修改控制器校验逻辑
重定向之前通过TempData存储跨请求的错误提示,TempData的生命周期刚好可以覆盖一次重定向请求,符合当前场景需求:
if (jsonResponse is null) { TempData["SearchError"] = "您搜索的内容无效"; return RedirectToAction("Index", "Home"); }
第二步:首页视图添加提示逻辑
在Home控制器对应的Index视图文件中,读取TempData中的错误信息,存在则触发提示,最简单的实现是直接弹出浏览器提示框:
@* 放在首页视图的任意位置即可 *@ @if (TempData["SearchError"] != null) { <script> alert('@TempData["SearchError"]'); </script> }
如果你想要更友好的页面内提示,不需要弹出框,可以替换成页面内提示块的写法,以下是基于通用样式的示例:
@if (TempData["SearchError"] != null) { <div style="padding: 12px; background: #fff3cd; color: #856404; border-radius: 4px; margin: 16px 0;"> @TempData["SearchError"] </div> }
内容的提问来源于stack exchange,提问作者lucaspompeun
相关产品推荐
相关产品推荐

