i有一个视图,该视图具有两个提交按钮(保存&ap&close,save& new)。
<span>
<input type="button" value="Save&New" name="Save&New" id="SaveNew" />
</span>
<span>
<input type="button" value="Save&Close" name="Save&Close" id="SaveClose" />
</span>
<span>
当我击中这些按钮中的任何一个时,模型数据将转到控制器并击中后行动
[HttpPost]
public ActionResult Company(MyProject.Models.Company company)
{
return View();
}
现在,我的公司对象拥有完整的模型数据(例如Company.phoneNumber,Company.State等)。现在,我想确定按钮的ID(保存新的或保存的关闭)用户单击。两个按钮点击引线均为相同的ActionResult(Company),我只想确定从哪个按钮点击该请求。无法使用 @html.actionlink而不是输入类型=提交。需要使用jQuery知道ID。
给您的按钮相同的名称:
<button type="submit" name="btn" value="save_new" id="SaveNew">Save&New</button>
<button type="submit" name="btn" value="save_close" id="SaveClose">Save&Close</button>
然后您的控制器操作可以采用此btn
字符串参数。
[HttpPost]
public ActionResult Company(MyProject.Models.Company company, string btn)
{
if (btn == "save_new")
{
// the form was submitted using the Save&New button
}
else if (btn == "save_close")
{
// the form was submitted using the Save&Close button
}
else
{
// the form was submitted using javascript or the user simply
// pressed the Enter key while being inside some of the input fields
}
return View();
}
还请注意,我使用了submit
按钮(type="submit"
),而在您的示例中,您使用了简单的按钮(type="button"
),该按钮不允许提交HTML表单。