我找到了“如何在this主题中使用超链接(actionlink)而不是按钮”执行POST方法的问题的答案。
我以这种方式使用了表单的提交方法 - 看起来很简单:
@foreach (var item in Model)
{
using (Html.BeginForm("Delete", "Area", new { id = item.id }, FormMethod.Post))
{
<tr>
...
<td>
<a href="#" onclick="$('#sbmt').trigger('click'); return false">Delete</a>
<input id="sbmt" type="submit" style="visibility: hidden" />
</td>
</tr>
}
}
没有按钮声明的典型声明
<a href="#" onclick="$(this).parents('form').submit();">Delete</a>
无效。
问题是:
1 /是否可以执行相同的操作但不隐藏按钮?我的意思是我根本不想在我的代码中使用(和隐藏)按钮。
2 /上面列出的解决方案的优缺点是什么?
答案 0 :(得分:0)
没有按钮是可能的。其中一种方法就是简单地给你的表单提供id
using (Html.BeginForm("Delete", "Area", new { id = item.id }, FormMethod.Post,new {id="frm"}))
{
}
and then
<a href="javascript:$('frm').submit();" class="login-button"></a>
如果不是jquery那么
<a href="javascript:document.getElementById("frm").submit();" class="login-button"></a>