ASP.NET MVC 3 Ajax.BeginForm和Html.TextBoxFor不反映在服务器上执行的更改
发布时间:2020-05-23 20:04:58 所属栏目:asp.Net 来源:互联网
导读:我在ASP.NET MVC3中使用Ajax.BeginForm帮助程序提交一个表单,该表单用服务器上设置的表单中的新值替换自己.但是当我使用像Html.TextBoxFor这样的帮助器时,我得到了提交的值,而不是我在服务器上插入模型的值. 例如;我在动作中将SomeValue设置为4并将其显示在文
|
我在ASP.NET MVC3中使用Ajax.BeginForm帮助程序提交一个表单,该表单用服务器上设置的表单中的新值替换自己.但是当我使用像Html.TextBoxFor这样的帮助器时,我得到了提交的值,而不是我在服务器上插入模型的值. 例如;我在动作中将SomeValue设置为4并将其显示在文本框中.我将值更改为8,点击提交,并期望在文本框中将值更改回4,但由于某种原因它保持为8.但如果我输出SomeValue而不使用Html助手,则表示4.任何人都有一些关于到底是怎么回事? 我的控制器: public ActionResult Index(HomeModel model)
{
model.SomeValue = 4;
if (Request.IsAjaxRequest())
return PartialView(model);
return View(model);
}
public class HomeModel
{
public int? SomeValue { get; set; }
}
我的观点(请注意,我的布局页面中没有所有必需的javascript): <div id="ajaxtest">
@using(Ajax.BeginForm(new AjaxOptions{ InsertionMode = InsertionMode.Replace,UpdateTargetId = "ajaxtest",HttpMethod = "Post" })) {
@Html.TextBoxFor(model => model.SomeValue)
<input type="submit" value="Update" />
}
</div>
解决方法您可以使用ModelState.Clear() 在您的控制器方法中,使html助手使用您更改的模型.否则,他们使用表单提交中的值 看看:Asp.net MVC ModelState.Clear (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 如何在asp.net会员中手动更改密码?
- asp.net-mvc – 在MVC Razor视图中使用@RenderBody有什么意
- asp.net-mvc-4 – GAC问题不能在IIS上托管应用程序
- asp.net-mvc – 自定义授权MVC 3和Ninject IoC
- asp.net – 使用AJAX进行WCF调用
- asp.net – 发布管理 – 发布给用户的一小部分 – 它对于面
- asp.net核心 – 渲染Razor视图到ASP.NET核心的字符串
- asp.net – 如何在占位符中的动态生成的标签之间创建换行符
- asp.net-mvc – Asp.Net MVC Ajax.BeginForm没有通过Ajax提
- 发送电子邮件asp.net c#
推荐文章
站长推荐
- 配置 – ASP.NET Web Api:项目需要SQL Server E
- asp.net – 如何使用SignalR的跨域连接(CORS –
- asp.net-mvc-2 – 如何在ASP.NET MVC中实现自定义
- asp.net-mvc-3 – 将nhibernate实体序列化为json
- asp.net-mvc-3 – MVC3值不能为null 参数名称:值
- asp.net-mvc-4 – MVC 4创建slug类型url
- asp.net-mvc-3 – 在MVC3中对Webgrid行进行内联编
- asp.net – 如何绕过X框架选项:SAMEORIGIN HTTP
- asp.net-mvc – 哪一层应该构建一个View Model?
- asp.net – 分布式事务完成 可以在新事务或NULL事
热点阅读
