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

如何在不使用JavaScript的情况下将模态按钮的Model.ID传递到模态窗口

解决方案

核心结论

不需要用GET表单回传,无JavaScript的情况下,最直接的解决方式是给每个条目生成专属的模态框,让触发按钮只对应自己条目绑定的模态框。

问题原因

你当前的代码里只有一个模态框,所有按钮都指向同一个#staticBackdrop2,页面渲染时模态框里的@Model.ID只会被赋值一次(也就是第一个条目的ID),所以不管点哪个按钮,模态框显示的都是第一个ID。无JS的情况下无法动态修改已渲染好的模态框内容,必须让每个按钮对应独立的模态框。

具体实现

假设你是通过循环(比如foreach)渲染所有条目,给每个按钮和模态框设置带当前条目ID的唯一标识:

@foreach (var item in Model.Items)
{
    <!-- 每个条目对应专属的触发按钮 -->
    <button type="button" data-bs-toggle="modal" data-bs-target="#staticBackdrop-@item.ID">删除</button>

    <!-- 每个条目对应专属的模态框 -->
    <div class="modal fade" id="staticBackdrop-@item.ID" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="staticBackdropLabel-@item.ID" aria-hidden="true">
        <div class="modal-dialog">
            <div class="modal-content">
                <div class="modal-header">
                    <h1 class="modal-title fs-5" id="staticBackdropLabel-@item.ID">删除确认</h1>
                    <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
                </div>
                <div class="modal-body">
                    确定要删除ID为 @item.ID 的条目吗?此操作不可撤销。
                </div>
                <div class="modal-footer">
                    <div>
                        <form action="@Url.Action("DeleteLesson","Lesson", new{ID = item.ID})" method="post">
                            <button type="button" class="btn btn-secondary" data-bs-dismiss="modal">取消</button>
                            <button type="submit" class="btn btn-danger">删除</button>
                        </form>
                    </div>
                </div>
            </div>
        </div>
    </div>
}

补充说明

  • 每个模态框的id和按钮的data-bs-target用@item.ID做后缀,保证唯一对应
  • 模态框内的文本和表单提交地址都使用当前条目的item.ID,确保数据准确
  • 这种方式不需要额外的表单回传或页面跳转,完全靠服务器端渲染完成所有内容绑定

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 23:10:28