asp.net – 在部分视图中强制使用没有Html.BeginForm / Ajax.BeginForm的无阻止语法
发布时间:2021-01-17 16:05:59 所属栏目:asp.Net 来源:互联网
导读:当我将部分表单放在局部视图中时,除了局部视图中的表单元素之外,所有表单部分都会获得无阻碍语法. 我发现如何“应用”无阻碍语法的唯一方法是在局部视图中启动另一个表单. 视图: @using (Ajax.BeginForm(SubmitHandler, new DefaultAjaxOptions())){ @Html.E
当我将部分表单放在局部视图中时,除了局部视图中的表单元素之外,所有表单部分都会获得无阻碍语法. 我发现如何“应用”无阻碍语法的唯一方法是在局部视图中启动另一个表单. 视图: @using (Ajax.BeginForm("SubmitHandler",new DefaultAjaxOptions())) { @Html.EditorFor(m => m.Name) @Html.Partial("MyPartialView",Model) } PartialView: @Html.TextBoxFor(m => m.SomeContent) 输出: <input class="text-box single-line" data-val="true" data-val-required="This field is required." id="Name" name="Name" type="text" value=""> <input id="SomeContent" name="SomeContent" type="text" value="0"> 因此,只有View中的input元素具有无阻碍语法,而部分视图没有… 有没有办法在局部视图中应用无阻碍语法,这不需要你开始一个新的表单? 解决方法我实际上找到了更好的解决方案在asp.net mvc代码中挖掘了一下,MvcForm类创建了所有无阻碍的验证语法.所以如果你使用: @using(new MvcForm(ViewContext)) { } 代替 @using(Html.BeginForm()) { } 它仍将应用无阻碍语法,但不会创建表单html标签:) (编辑:台州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – MVC Razor – 如何向自己提交表单
- asp.net – 更改事件和IE8的jQuery问题
- asp.net类序列化生成xml文件实例详解
- asp.net-identity交易问题
- ASP.NET MVC 4 JSON绑定到视图模型 – 嵌套对象错误
- asp.net-mvc – 如何使用带有IEnumerable的Html.CheckBox(l
- 如何设置特定于ASP.NET请求的log4net上下文属性?
- asp.net – Session Timeout .NET
- asp.net中Session缓存与Cache缓存的区别分析
- asp.net-mvc-4 – 如何在Kendo UI Grid中扩展页面加载时的所