在 ASP.NET MVC 3 窗体内创建操作链接
本文关键字:创建 操作 链接 窗体 ASP NET MVC | 更新日期: 2023-09-27 18:28:45
@using (Html.BeginForm("AbuseReportInfo", "Admin", new {id = @Model.Id, verify = true }))
{
<div class="cashOutHistory-item-header">
@Html.ActionLink(@Model.Material.Name, "Details", "Material", new { id = Model.Material.Id }, null)
</div>
<div class="cashOutHistory-item-header">
Subject:
</div>
<div>
<span class="cashOutHistory-item">
@Html.DisplayFor(model => model.Subject)
</span>
</div>
<div class="cashOutHistory-item-header">
Description</div>
<div>
<span class="cashOutHistory-item">
@Html.DisplayFor(model => model.Description)
</span>
</div>
<p>
<input type="submit" id="btnVerify" name="btnVerify" value="Discard" />
</p>
<p>
@Html.ActionLink("Back to List", "Index")
</p>
}
创建操作链接时:
@Html.ActionLink(@Model.Material.Name, "Details", "Material", new { id = Model.Material.Id }, null)
加载页面时,链接不可单击。
但是当将操作链接放在下面时:
@Html.ActionLink("Back to List", "Index")
链接正在工作。
这是为什么呢?我希望链接能够在最初放置的位置工作。
正如@Giredrius评论中提到的,很有可能某些JavaScript代码正在取消点击事件,尝试更改ID或名称进行测试,例如
@Html.ActionLink("test name", "Details", "Material", new { id = "TestId_1"}, null)
如果上面的代码有效,可以确认取消JS代码的存在,然后在JS文件中搜索该代码
我认为您不需要此行中的第二个@
符号:
@Html.ActionLink(@Model.Material.Name, "Details", "Material", new { id = Model.Material.Id }, null)
将其更改为:
@Html.ActionLink(Model.Material.Name, "Details", "Material", new { id = Model.Material.Id }, null)
您已经在带有@Html
的 Razor 解析器中,因此第二个标记可能会抛弃解析器。