使用HTML.ActionLink调用Post方法

时间:2013-06-28 18:54:02

标签: asp.net-mvc-4 razor

我已阅读过类似问题的多篇帖子,但没有奏效。

我在项目控制器中调用“发布”版本编辑操作时,修复了页脚按钮并面临问题。这是我正在尝试做的事情

Error

如果问题需要进一步解释,请告诉我。

(我尝试使用Ajax.ActionLink,这也是在多个帖子中提出的,但没有成功。

Similar Question

1 个答案:

答案 0 :(得分:7)

最后,我设法通过一些解决方法来修复它。在这里发布解决方案以帮助某人。

就像我之前说的那样,我尝试使用Ajax.ActionLink,但我无法实现相同的目标。相反,我寻找从表单外部调用表单提交操作,这就是我在这里真正需要的。

表单:为表单命名,说“editProjDetailsForm”
 @using (Html.BeginForm(null, null, FormMethod.Post,
new { @class = "form-horizontal",
name = "editProjDetailsForm" }))

页脚:从页脚按钮调用此方法。

<input type="button" onclick="document.editProjDetailsForm.submit();" 
       class="btn btn-primary"
       value="Save Changes" />

我也尝试了这个,但没有锻炼:

@Ajax.ActionLink("Save Changes", "Edit", new { id = Model.ProjectId }, 
              new AjaxOptions { HttpMethod = "POST" })

有用的帖子

  1. Naming A form using Begin Form
  2. Submit Button outside HTML.BeginForm
  3. Submit Button outside HTML.BeginForm (another link)
  4. ASP.net ActionLink and POST Method
  5. Error in case you have parameterized constructor in ViewModel and did not declare parameterless constructor
  6. 如果您使用bootstrap显示问题在页脚中我有一个输入类型=按钮和一个带有class =按钮的操作链接。两者都嵌套在一个btn-group中,但在下面的快照中,高度看起来不同,如下所示:

    Different buttons

    修复:发现这是一个已知问题,并且有一个建议的解决方案,但对我来说没有多大帮助(即对于Internet Explorer)。 input type=submit and anchor button in btn-group appear as different sizes

    解决方案:添加.btn { line-height:normal!important; }或者如果您只想为特定按钮执行操作,请按上述输入按钮执行此操作:

    <input type="button" onclick="document.editProjDetailsForm.submit();" 
         class="btn btn-primary"
         value="Save Changes" 
         style="line-height:normal!important;" />