假设我有一个表格,表格有两个 div 容器。一个 div 容器有几个用于提交登录详细信息的文本框,另一个 div 也有几个与注册相关的文本框。现在我的家庭控制器有两种操作方法,一种是登录,另一种是注册。我希望当用户单击登录按钮时,我将通过 jquery 提交表单,但在提交之前我将更改操作 url。当用户单击注册按钮时,我想以同样的方式调用注册操作方法。请指导我如何使用 jquery 在 mvc 中做到这一点。请帮我提供示例代码。
另一个人像在其他论坛中一样回答。
@model MvcForums.Models.StudentModel
@{
using(@Html.BeginForm("Create","Student", FormMethod.Post))
{
<label> Name</label>
@Html.TextBoxFor(m=>m.FirstName) <br/>
<label> From country:</label>
@Html.DropDownListFor(m=>m.CountryId, Model.Countries,"--please select-- ") <br/>
<input id="btnSave" value ="Login" type="submit" name="commandName"/>
<input id="btnRegister" value ="Register" type="submit" name="commandName"/>
}
}
[HttpPost]
public ActionResult Create(StudentModel studentModel, string commandName)
{
if(commandName == "Login")
{
}
else if(commandName == "Register")
{
}
return View("Index");
}
阅读他的回答后,我的脑海中出现了一些困惑,因为我是 mvc 的新手,如下所示
首先,您的代码对于格式错误是不可读的。我是 mvc 的新手....只是学习它。阅读您的代码后,会出现一些混乱。
1)为什么你给了额外的括号@{ }
2 u<label> Name</label>
在表单构建代码中使用。在 html4 中是否有任何标签?它是 html5 特定标签吗?
3)@Html.DropDownListFor(m=>m.CountryId, Model.Countries,"--please select-- ")
当你建立下拉菜单时,为什么你没有指定值和文本文件...... mvc如何理解什么字段是值和什么是文本?你只需用 DropDownListFor() 绑定模型
4)只是看到它
<input id="btnSave" value ="Login" type="submit" name="commandName"/>
<input id="btnRegister" value ="Register" type="submit" name="commandName"/>
两个按钮名称是commandName
?这是正确的吗 ?
当用户单击任何按钮时,按钮名称将如何传递给
public ActionResult Create(StudentModel studentModel, string commandName)
Create()
方法 ?请告诉我命令名称将如何隐式传递给Create() and how commandName
服务器端的变量可以保存按钮名称。
阅读您的代码后,我有太多的困惑。如果可能的话,请详细讨论我的所有观点。谢谢