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" ...
随机推荐
- JS实现的数组全排列输出算法
本文实例讲述了JS实现的数组全排列输出算法.分享给大家供大家参考.具体分析如下: 这段js代码对数组进行全排列输出,改进了一些老的代码 从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来, ...
- [移动端WEB] 移动端网站响应式布局之"rem",CSS3 rem使用方式
(function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ' ...
- freecodecamp 基础算法题笔记
数组与字符串的转化 字符串转化成数组 reverse方法翻转数组顺序 数组转化成字符串. function reverseString(str) { a= str.split("" ...
- java基础(三) 加强型for循环与Iterator
引言 从JDK1.5起,增加了加强型的for循环语法,也被称为 "for-Each 循环".加强型循环在操作数组与集合方面增加了很大的方便性.那么,加强型for循环是怎么解析的 ...
- Django Redis验证码 密码 session 实例
1.settings CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCach ...
- 从零开始学习Docker
由于项目中可能用到docker容器,在此记录一下我的学习过程 1,docker的安装,wget -qO- https://get.docker.com/ | sh,查看docker是否安装成功: 此处 ...
- MySQL Flashback 工具介绍
MySQL Flashback 工具介绍 DML Flashback 独立工具,通过伪装成slave拉取binlog来进行处理 MyFlash 「大众点点评」 binlog2sql 「大众点评(上海) ...
- [翻译] AFSoundManager
AFSoundManager iOS audio playing (both local and streaming) and recording made easy through a comple ...
- 【数据结构】循环队列 C语言实现
"Queue.h" #include "Queue.h" #include <stdio.h> #include <stdlib.h> ...
- IntelliJ IDEA2017/2018 激活方法 破解补丁激活(亲测可用)(注册码方法以和谐)
IntelliJ IDEA2017 激活方法(注册码方法以和谐): 搭建自己的授权服务器,对大佬来说也很简单,我作为菜鸟就不说了,网上有教程. 我主要说第二种,现在,直接写入注册码,是不能成功激活的( ...