You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core MVC:RedirectToAction传错误ID并弹窗提示

解决方案

步骤1:在Index.cshtml中接收传递的ID参数

在Razor页面中,通过Request.Query获取URL里的id参数,赋值为页面变量供后续逻辑使用:

@model IEnumerable<LocationFinder.Models.Datasets>
@{ 
    ViewData["Title"] = "Index"; 
    Layout = "~/Views/Shared/_Layout.cshtml";
    // 提取URL中的id参数
    var errorId = Request.Query["id"];
}

步骤2:实现弹窗提示逻辑

在页面底部添加JavaScript代码,判断errorId是否存在,存在则触发带确认按钮的提示框:

方式1:原生JavaScript确认框

用浏览器自带的确认弹窗实现基础功能:

<script>
    window.addEventListener('DOMContentLoaded', function() {
        var errorId = '@errorId';
        if (errorId) {
            // 可根据errorId自定义提示文本,比如匹配不同错误信息
            var tipMessage = `操作完成,错误ID:${errorId}`;
            // 弹出带确认按钮的提示框
            confirm(tipMessage);
        }
    });
</script>

方式2:Bootstrap模态框(美观版)

如果项目已引入Bootstrap,用模态框实现更友好的弹窗:

<!-- 模态框结构 -->
<div class="modal fade" id="tipModal" tabindex="-1" aria-labelledby="tipModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <h5 class="modal-title" id="tipModalLabel">操作提示</h5>
        <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
      </div>
      <div class="modal-body">
        操作完成,错误ID:<span id="errorIdText"></span>
      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-primary" data-bs-dismiss="modal">确认</button>
      </div>
    </div>
  </div>
</div>

<script>
    window.addEventListener('DOMContentLoaded', function() {
        var errorId = '@errorId';
        if (errorId) {
            document.getElementById('errorIdText').textContent = errorId;
            // 显示模态框
            const modal = new bootstrap.Modal(document.getElementById('tipModal'));
            modal.show();
        }
    });
</script>

完整Index.cshtml示例

整合后的完整页面代码:

@model IEnumerable<LocationFinder.Models.Datasets>
@{ 
    ViewData["Title"] = "Index"; 
    Layout = "~/Views/Shared/_Layout.cshtml";
    var errorId = Request.Query["id"];
}
<h1>Datasets</h1>
<br><br>
<p><a asp-action="Create">Create Files</a></p>
<br>
<table class="table">
   <!-- 表格内容 -->
</table>

<script>
    window.addEventListener('DOMContentLoaded', function() {
        var errorId = '@errorId';
        if (errorId) {
            confirm(`操作完成,错误ID:${errorId}`);
        }
    });
</script>

内容的提问来源于stack exchange,提问作者tj26

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.12 11:44:56