如何在没有提交按钮的情况下访问Post方法

时间:2010-08-31 18:57:12

标签: c# asp.net-mvc

我正在研究MVC项目,当单击提交按钮访问Post方法时,该项目工作正常。我有一个侧面菜单,我想访问Post方法并在重定向之前保存必要的更改。我该怎么做?

<fieldset>
    <% Html.RenderPartial("SideMenu", Model); %>
</fieldset>
<fieldset>
    //data with submit button
</fieldset>

[AcceptVerbs(HttpVerbs.Get)]
public ActionResult dataAccess()
{
    //...
}

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult dataAccess()
{
    //...
}

SideMenu.ascx ...

<%= Html.ActionLink("Witness", "Witness", "Loss")%>

4 个答案:

答案 0 :(得分:2)

您可以在相关菜单项中添加onclick javascript方法。

<form name="myform" action="action.php" method="POST">
 <input> ... 
</form>

<ul id="menu">
  <li class="menuitem" onclick="javascript: document.myform.submit()">Do Stuff To Form</li>
</ul>

答案 1 :(得分:2)

使用Jquery:

$('#MyFormId').submit();

$('#MyButtonId').click();

答案 2 :(得分:0)

一种方法是通过javascript触发点击你的按钮(jquery让它变得非常简单)

答案 3 :(得分:0)

您可以拥有隐藏数据的表单,而不是操作链接使用提交按钮,但将其设置为链接。通过这种方式,您可以在没有javascript的情况下获得POST请求,并且它与用户看起来相同。

E.g。

<form>
  <input type="submit" value="test" 
         style="text-decoration: underline; background: none; border: 0; cursor: pointer;"/>
</form>