asp.net-mvc – MVC @ Html.CheckboxFor在表单提交时提交true,fa
我正在使用MVC 5和EF Code First,并且有一个包含bool的View模型:
public bool MyCheckbox { get; set; } 我在View的get中初始化了这个: model.MyCheckbox = true; 在视图中: @Html.CheckBoxFor(m => m.MyCheckbox) 其中呈现为: <input checked="checked" data-val="true" data-val-required="The field is required." id="MyCheckbox" name="MyCheckbox" type="checkbox" value="true" /> <input name="MyCheckbox" type="hidden" value="false" /> 我在View上的一个按钮触发了一个Ajax POST到Controller,我想查看复选框值: bool bValue = Request["MyCheckbox"] == "true"; 但是由于名称=“MyCheckbox”的额外隐藏字段,Request [“MyCheckbox”]的值为“true,false”. 如何使用Request [“…”]查看控制器中此复选框的值并理解它(是真还是假)? 我在View模型中还有另一个bool成员,我故意在隐藏字段中使用它.在模型中: bool MyHiddenBool { get; set; } 在Controller获取: model.MyHiddenBool = true; 在视图中: @Html.HiddenFor(x => x.MyHiddenBool) 在Controller中(通过Ajax POST): bool AnotherBool = Request["MyHiddenBool"] == "true"; 但Request [“MyHiddenBool”]的值是“True”或“False”而不是“true”和“false”. 是什么给出了这种不一致性,如何在我的视图中可靠地看到这两种bool方法的值? 解决方法
问题是你如何使用表单请求变量.
在ASP.NET MVC中,可能永远不会有充分的理由使用Request.Form或它的变体来使用您的请求数据.您需要创建模型或为操作添加参数. [HttpPost] public ActionResult PostedForm(bool myHiddenBool) { //Frameworks model binder will extract the form field into your variable based on the name } 以下从this answer.复制
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何说服我的管理员从ASP.NET 2.0升级到3.5?
- ASP.NET MVC中将数据从Controller传递到视图
- 将空白字段值传递给存储过程ASP .NET C#
- asp.net-core – app.UseErrorHandler()可以访问错误详细信
- asp.net – 无效的安全证书和域名
- asp.net-mvc – 根据MVC中第一个dropdownlistfor的值启用第
- 使用经典ASP编写完整的XML文件
- asp.net-mvc – Visual Studio 2010是否支持MVC 5?
- asp.net – FormsAuthentication.SetAuthCookie做了什么
- asp.net – 代码隐藏方法与Jquery AJAX调用
- asp.net MVC的Html.RadioButton生成id和名称相同
- asp.net-mvc – 如何创建ASP.NET MVC控制器从查询
- asp.net-mvc – Thunderdome MVC-为什么在MVC中使
- IIS ASP.NET vs(NGINX FastCGI Mono或XSP)的性能
- asp.net-mvc-4 – 使用Twitter Bootstrap 3放置验
- ASP.Net Response.Redirect不能在Application_Er
- asp.net – 什么是global.asax用于?
- ASP.NET潜在危险请求Javascript正则表达式
- ASP.NET Core中调整HTTP请求大小的几种方法详解
- asp.net – 如何将ContextKeys属性用于AjaxFileU