我有一个简单的表单,其中包含名称和年龄输入框,在底部我有两个按钮,如:
<input type="submit" id="submitButton" name="submitAction" value="Save" />
<input type="submit" id="submitButton" name="submitAction" value="Submit" />
保存按钮只是创建一个临时数据,以便他们可以返回并编辑它,提交按钮将继续并创建它,现在当点击任何按钮时它将转到此控制器功能:
public ActionResult CreatePerson(Person model, string submitAction)
{
//lots of code i removed
}
但是submitAction是null,关于为什么会这样做的任何想法?
我的完整.cshtml代码
@model Person
@using (Html.BeginFormAntiForgeryPost(null, FormMethod.Post))
{
@Html.TextBox(x => x.Name)
@Html.TextBox(x => x.Age)
<input type="submit" id="submitButton" name="submitAction" value="Save" />
<input type="submit" id="submitButton" name="submitAction" value="Submit" />
}
答案 0 :(得分:0)
您需要指定action at the form level
。不要在提交按钮
<form action="controller/action" method="post">
<input type="submit" id="submitButton" value="Save" />
</form>
最好使用内置HTML herlper类的MVC,如
@using (Html.BeginForm("ActionName", "ControllerName", FormMethod.Post))
{
<input type="submit" id="submitButton" value="Save" />
}
答案 1 :(得分:0)
我发现了问题
基本上我不得不改变这个
<input type="submit" id="submitButton" name="submitAction" value="Save" />
<input type="submit" id="submitButton" name="submitAction" value="Submit" />
到这个
<input type="submit" id="saveButton" name="submitAction" value="Save" />
<input type="submit" id="saveButton" name="submitAction" value="Submit" />
submitButton似乎没有正确发布:)