RadioButtonFor值为false.默认选中的问题
(自己看了下.图片有点宽.显示的不全.可以右键新标签查看)
作为一个新手.今天又开始了mvc的学习之旅.然而学习过程中又遇到了一个奇妙的问题....
一切按部就班到了这里.注册界面.

一眼看上去就不对劲.性别那里怎么默认是女.你可以选第一个.可以不选.默认选第二个.总让我觉的怪怪的.当然啦.还有一部分原因是和教程不一样.
我们来看看model

在看看视图代码

我也没有设置.默认选中了.第二个.
好了测试开始...不上截图了.说结果
这要不是bool的话.就不会选中.是bool的话.就会选中值为false的哪项.
这不行呐.我要解决这个问题.
于是百度之....找到一个方法.添加html属性.于是乎代码成了这样

然而界面还是这样....

赶紧看看源代码

完全不按剧本走.和我想的不一样.我以为手动赋值后就不会加了.好嘛.结果成了2个checked.不过即使是这样显示的还是选择第二个.
于是另辟蹊径.前面不是说了.不是bool.就不会默认选中了.于是乎.脑子一动.反正页面都是字符串.那就来个字符串把.

结果微软强大的地方来了.来了.来了.结果如下图.

我要说什么好.微软把字符的false也当做了.bool值来处理......
再想....要欺骗它.于是在false前面加了个空格

结果.

微软没有太"聪明".没有识别成bool值.但是这样怕后台.接受值时.转换不成bool.好在担心是多余的.成功识别了.

这样的话.我们可以通过添加属性.来显示默认选择哪个.或者什么都不选.
还有一个疑问.我说的教程中是怎么回事呢?
原来教程中的model是这样的

看见区别了吗?原来是教程中的数据库性别那里是可空.ef对应过来就是可空bool.这样的话.那里那样写就不会默认选中了.
我的数据库性别是不可空的.于是就遇到了上面的问题.
还好.顺利的解决了这个问题.也是一个小小的收获.我百度的过程中.并没有百度到这样的情况.所有在此分享出来.O(∩_∩)O~
RadioButtonFor值为false.默认选中的问题的更多相关文章
- 单选框radio总结(获取值、设置默认选中值、样式)
单选框 radio <div class="radio-inline"> <input type="radio" name="kil ...
- PHP 根据php传的值修改 select 中动态生成的 option 组的默认选中值
有一个情况今天遇到了:通过后台传过来的一组下拉框的option值,需要默认选中其中某一项. html 部分是这样的: <select class="form-control" ...
- vue中select设置默认选中
vue中select设置默认选中 一.总结 一句话总结: 通过v-model来:select上v-model的值为option默认选中的那项的值(value) 二.select设置默认选中实例 < ...
- 如何在某些情况下禁止提交Select下拉框中的默认值或者第一个值(默认选中的就是第一个值啦……)
群里有个帅哥问了这么个问题,他的下拉框刚进页面时是隐藏起来的,但是是有值的,为啥呢?因为下拉框默认选中了第一个值呗,,, 所以提交数据的时候就尴尬啦,明明没有选,但是还是有值滴.怎么办呢? 一开始看到 ...
- jqgrid cellEdit为true的时候,默认选中单元格值的解决方案
jqgrid cellEdit为true的时候,点击单元格的时候,鼠标在单元格最前面闪. 这时候如果要修改数字内容,非常麻烦.要全选单元格内容,不然不好改. 点击单元格的时候,默认选中单元格值的解决方 ...
- 修改select下拉选的默认选中值
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...
- vue select二级城市联动及第二级默认选中第一个option值
当二级联动比如选择国家的时候,希望选中一个国家的时候后面城市默认选中第一个城市,则给国家的select加一个@change事件就可以了 <div class="inputLine&qu ...
- select获取下拉框的值 下拉框默认选中
本文主要介绍select下拉框的相关方法. 1.通过id获取下拉框的value和文本值 例如: <select class="form-control" id=" ...
- 如何获取select中的value、text、index相关值 && 如何获取单选框中radio值 && 触发事件 && radio 默认选中
如何获取select中的value.text.index相关值 select还是比较常用的一个标签,如何获取其中的内容呢? 如下所示: <select id="select" ...
随机推荐
- vue如何实现代码打包分离(按需加载)
在vue中使用import()来代替require.ensure()实现代码打包分离 一.require.ensure() 方法来实现代码打包分离 require.ensure() 是 webpack ...
- window.open('') 火狐,IE事件冒泡处理,点击事件冒泡处理
window.open('') 火狐,IE事件冒泡处理,点击事件冒泡处理 写PC下拉菜单的时候,hover样式显示下拉菜单,可能会这样写 <li class="xb_li1" ...
- WebGIS点要素渲染性能测试
$('#stationQuery').bind('click', function(){ var drawStyle = $.extend( { }, map.geomap( "option ...
- shrio的简单认识
博客讲解; shrio的知识储备 shrio的简单认识 笔记整理地址: Shrio.pdf 下载 Shrio理论.doc 下载 shrio知识储备.doc 下载
- 在虚拟机中安装ubuntu16.04后不能全屏显示
一.在终端输入:xrandr 二.输入:xrandr -s 1920x1440 参考网站:https://blog.csdn.net/qq_33202928/article/details/75021 ...
- The directory '/home/stone/.cache/pip/http' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If execu
使用sudo pip install ......的时候出现下面一段黄色的代码: The directory '/home/stone/.cache/pip/http' or its parent d ...
- 聊聊 getClientRects 和 getBoundingClientRect 方法
开始表演 今天来聊一下两个相似的方法,它们就是:getBoundingClientRect().getClientRects(). 只见它们俩手拉手地登上了舞台,一个鞠躬,便开始滔滔不绝起来. 自述 ...
- phantomJs页面截图
因为phantomjs使用了一个真正的渲染引擎WebKit,它能截取一个web页面的真实影像,这是因为phantomjs能够折射出WEB页面上的任何东西,包括html,css,svg和Canvas等. ...
- Sql Server中的谓词和运算符
谓词和运算符配合使用是我们得到理想数据的最佳途径. 一.浅谈谓词 谓词的概念:一个运算结果为True.False或Unknown的逻辑表达式.它的运用范围有:where子句.Having子句.Chec ...
- JAVA两种代理模式
简单设计动态代理,基本模拟spring的动态代理方式. before afterReturning around afterException after这些通知方法都可以这块模拟出来 spring的 ...