asp.net-mvc – 保存后显示相同的页面
发布时间:2020-12-15 19:44:55 所属栏目:asp.Net 来源:网络整理
导读:我想显示一个带有某个字段的表单(示例中有一个),提交它,保存并显示同一页面并重置所有字段.我提交时的问题,我进行“保存”操作,但是当我显示视图时,表单仍然填写. 该模型 : public class TestingModel{ public string FirstName { get; set; }} 控制器: pu
我想显示一个带有某个字段的表单(示例中有一个),提交它,保存并显示同一页面并重置所有字段.我提交时的问题,我进行“保存”操作,但是当我显示视图时,表单仍然填写.
该模型 : public class TestingModel { public string FirstName { get; set; } } 控制器: public class ChildController : Controller { public ActionResult Index() { TestingModel model = new TestingModel(); return View(model); } public ActionResult Save(TestingModel model) { Console.WriteLine(model.FirstName); //OK //Save data to DB here ... TestingModel testingModel = new TestingModel() { FirstName = string.Empty }; return View("Index",testingModel); } } 风景 : @using (Html.BeginForm("Save","Child",FormMethod.Post)) { @Html.TextBoxFor( m => m.FirstName) <input type="submit" id="btSave" /> } 当Id调试到视图时,在“Immediat窗口”Model.FirstName =“”但是当页面显示时,我仍然发布了值.我在Save方法的末尾尝试了ReditrectionToAction(“Index”)但结果相同. 你有好主意吗 ? 谢谢, 解决方法
如果你想这样做,你需要清除ModelState中的所有内容.否则,HTML帮助程序将完全忽略您的模型,并在绑定其值时使用ModelState中的数据.
像这样: [HttpPost] public ActionResult Save(TestingModel model) { //Save data to DB here ... ModelState.Clear(); TestingModel testingModel = new TestingModel() { FirstName = string.Empty }; return View("Index",testingModel); } 或者只是在成功的情况下重定向到Index GET操作: [HttpPost] public ActionResult Save(TestingModel model) { //Save data to DB here ... return RedirectToAction("Index"); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何在Asp.Net Mvc中进行Basecamp风格的账户?
- asp.net – 如何将razor变量作为参数传递给jquery函数
- 代码“Request.Headers.Range”不能在asp.net核心上运行
- .net – 如何将MS Chart for 3.5更新为MS Chart 4?
- .net – 回发数据和视图状态数据之间的区别是什么
- 为什么工作线程使我的ASP.NET生成器在睡眠期间遇到ThreadAb
- 使用ASP.NET会话状态服务器(而不是InProc)的优点和缺点?
- .net – 制作类似TinyURL.com的简短网址
- 在ASP.NET MVC 2中集成CKEditor?
- asp.net-mvc – ASP.Net MVC 3:反向授权属性
推荐文章
站长推荐
热点阅读