MVC中CheckBox
来源:互联网 发布:mac 设置homekit 编辑:程序博客网 时间:2024/05/18 13:11
一、单个Checkbox
1、View文件
<%= Html.CheckBoxFor(model => model.IsNeverExpired)%>
2、生成的HTML为
<input id="IsNeverExpired" name="IsNeverExpired" type="checkbox" value="true" />
<input name="IsNeverExpired" type="hidden" value="false" />
3、备注
(1)、上面生成的HTML有点奇怪, 为什么它会生成两个控件呢?
因为如果只生成一个input, 系统无法区分"没有选中checkbox" 和 "checkbox没有生成".
(2)、那又是为什么只生成一个input就无法区分呢?
原来当一个form中包含checkbox时,如果没有给它赋值(选中), 在服务器端Request.Form中得到的值是NULL
二、多个Checkbox
方法一:通过在视图页编码的方式
C# 代码 复制
@using MvcCheckBoxList.Model@model MvcApplication2.Models.UserVm@{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout。cshtml";}@using (Html.BeginForm()){ @Html.HiddenFor(m => m.User.Id) <br/> @Html.LabelFor(m => m.User.Name) @Html.EditorFor(m => m.User.Name) @Html.ValidationMessageFor(m => m.User.Name) <br/> <ul style="list-style:none;"> @foreach (var a in Model.AllRoles) { <li> @if (Model.SelectedRoleIds.Contains(a.Id)) { <input type="checkbox" name="SelectedRoleIds" value="@a.Id" id="@a.Id" checked="checked"/> <label for="@a.Id">@a.Name</label> } else { <input type="checkbox" name="SelectedRoleIds" value="@a.Id" id="@a.Id" /> <label for="@a.Id">@a.Name</label> } </li> } </ul> <br/> <input type="submit" value="为用户设置角色"/>}@section scripts{ @Scripts.Render("~/bundles/jqueryval")}
方法二:通过NuGet的MvcCheckBoxList扩展
→工具--库程序包管理器--程序包管理器控制台→install-package MvcCheckBoxList
C# 代码 复制
@using MvcCheckBoxList.Model@model MvcApplication2.Models.UserVm@{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout。cshtml";}@using (Html.BeginForm()){ @Html.HiddenFor(m => m.User.Id) <br/> @Html.LabelFor(m => m.User.Name) @Html.EditorFor(m => m.User.Name) @Html.ValidationMessageFor(m => m.User.Name) <br/> @Html.CheckBoxListFor(m => m.SelectedRoleIds, m => m.AllRoles, //所有角色 r => r.Id, //value值 r => r.Name, //显示值 r => r.UserRoles, //用户当前角色 Position.Horizontal //CheckboxList排列方向 ) <br/> <input type="submit" value="为用户设置角色"/>}@section scripts{ @Scripts.Render("~/bundles/jqueryval")}
0 0
- MVC中CheckBox
- MVC CheckBox
- mvc easyui checkbox
- MVC 传值 - CheckBox
- MVC Jquery 实现Checkbox全选
- MVC Kendo总结之-----> CheckBox
- Asp.net MVC P2 中无法正确获取 CheckBox值的bug的解决方案
- 获取asp.net mvc中Html.CheckBox生成代码的值
- Spring MVC 标签之checkbox与checkboxes
- Spring MVC 保存checkbox的value
- spring mvc 后台获取checkbox的值
- Spring MVC遭遇checkbox的问题解决方案
- Spring MVC checkbox and checkboxes example
- .NET MVC标签扩展(checkbox,radio)
- Spring MVC框架checkbox标签的使用
- Spring MVC框架checkbox标签的使用
- js中checkbox处理,js获得checkbox
- DataGrid中添加CheckBox
- Python字符串方法
- linux下安装numpy and matplotlib
- git - 查看某次提交某个文件的修改
- CentOS 挂载 ntfs
- Python判断字符串编码以及编码的转换
- MVC中CheckBox
- windows下安装Maven
- PHP自定义函数实现文字到拼音转换功能
- Python exec 和 eval
- Android4.×耳机插拔检测
- 数组中的逆序对
- [BZOJ3572][Hnoi2014]世界树 && 虚树+DP
- Android=判断当前是否处于前台
- Mac OS X 快捷键(完整篇)