FormCollection不填充
我正在处理一个MVC项目,我想通过一个FormCollection,填充表单数据,并将其发布到我的控制器中的操作方法。下面是该视图的例子:FormCollection不填充
<asp:TextBox ID="txtClientLastName" name="txtClientLastName" runat="server" class="focus"/>
(是的,我知道ASP控制在MVC观点并不好,但是这就是我有回到标签之间观看结束代码,以及这是为什么!我还没有取代他们)
我用一个辅助链接到我的行动:
<%=Html.ActionLink("Save","ClientInformationEdit",new {id=Model.PersonId})%
这就要求我的行动:
public ActionResult ClientInformationEdit(int id, FormCollection form) {
//rptLOA_GridCommands(form, id);
CIHelper ch = new CIHelper();
ch.person.LastName = form["txtClientLastName"];
db.SaveChanges();
return View(ch);
}
我的passes the correct value but FormCollection form is null so form["txtClientLastName"] is null and I don
知道为什么。
回答:
添加后的属性如下图所示:
[HttpPost] public ActionResult ClientInformationEdit(int id, FormCollection form)
{
//rptLOA_GridCommands(form, id);
CIHelper ch = new CIHelper();
ch.person.LastName = form["txtClientLastName"];
db.SaveChanges();
return View(ch);
}
如果你想发布在超链接上单击窗体,然后添加以下代码:
<%=Html.ActionLink("Save","ClientInformationEdit",new {id=Model.PersonId,onclick="document.getElementById('form-id').submit();"})%>
回答:
试试这个:
@using (Html.BeginForm("Save", "ClientInformationEdit", FormMethod.Post)) {
<input type="hidden" value="@Model.PersonId"/>
<asp:TextBox ID="txtClientLastName" name="txtClientLastName" runat="server" class="focus"/>
<input type ="submit"/>
}
在 你的看法
以上是 FormCollection不填充 的全部内容, 来源链接: utcz.com/qa/263217.html