asp.net-mvc-3 – 绑定到视图模型的MVC3 Razor – TextBoxFor()
发布时间:2020-12-16 09:59:59 所属栏目:asp.Net 来源:网络整理
导读:我的视图在html表中显示一系列行.行按数据库中的排序顺序排序. html表中的一列是一个允许用户修改此排名顺序的文本框.表格底部有一个更新提交按钮,允许用户保存此新订单.我遇到的问题是排名顺序正确更新到数据库,但是当控制器返回到视图时,所有数据都在屏幕
我的视图在html表中显示一系列行.行按数据库中的排序顺序排序. html表中的一列是一个允许用户修改此排名顺序的文本框.表格底部有一个更新提交按钮,允许用户保存此新订单.我遇到的问题是排名顺序正确更新到数据库,但是当控制器返回到视图时,所有数据都在屏幕上正确更新,但文本框中的值不会更新.
Order | Data ================================================ 10 | Item 1 20 | Item 2 30 | Item 3 Lets say the user makes the following changes Order | Data ================================================ 50 | Item 1 20 | Item 2 10 | Item 3 Now User hits update and what is rendered is: Order | Data ================================================ 50 | Item 3 20 | Item 2 10 | Item 1 (Note data was sorted correctly but values of TextBoxFor did not update) 我的观点代码 @using (Html.BeginForm("UpdateRanks","MyController")) { <table cellpadding="0" cellspacing="0" width="100%"> @for (int i = 0; i < Model.DbSelections.Count; i++) { var item = Model.DbSelections[i]; <tr> <td> @Html.TextBoxFor(m => m.DbSelections[i].Rank,new { @class = "NarrowTextBox" }) </td> <td> @Model.DbSelections[i].Rank (works!),@item.ItemName<br /> </td> </tr> } <input type="submit" value="Update" name="updateaction" class="StandardButton"/> </table> } 控制器代码: [HttpPost] [MultiButton(MatchFormKey = "updateaction",MatchFormValue = "Update")] public ActionResult UpdateRanks(MyViewModel model) { if (ModelState.IsValid) { MyRepository myRepo = new MyRepository(); <!-- saves updated ranks to database - it works --> myRepo.UpdateAutoPicks(...); <!-- after saved ranks above,now reload data including ranks from database --> <!-- debugging shows that data and ranks and ordering is correct-> model.DbSelections = myRepo.GetItems(); return View("Index",model); } else { <!-- blah --> } return View("Index",model); } 解决方法
看看这个其他
Post是否可以帮到你.
使用此解决方案的一个警告是,您将丢失使用TextBoxFor()的任何内置功能,例如验证.如果这不起作用,您可以尝试使用ModelState.Clear()来清除已发布的值(有关详细信息,请参阅here). (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 如果内容是静态的,那么对于带有“If-Modified-S
- asp.net-mvc – 获取控制器mvc 4中的复选框值
- ASP.NET MVC3 RAZOR:文件上载给出文件计数为零
- .net core 使用Rotativa创建PDF文档
- asp.net-mvc-3 – 在mvc 3中上传成功的图像,但编辑图像时会
- asp.net-mvc – 使用WebForm的MVC HtmlHelper
- asp.net – 通过javascript禁止文本框中的退格
- asp.net-mvc-4 – 无法获取MVC 4 FileExtensions属性来处理
- asp.net-mvc – 使用下拉列表过滤MVC中的结果
- asp.net-mvc – 如何在不给每个控制器放置注释的情况下授权