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" ...
随机推荐
- 【代码笔记】iOS-DropDownDemo-下拉按钮效果
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...
- php 判断字符串长度和字符串为纯数字字符串
<?php $str="123456a"; $str_a=123456"; if(is_numeric($str)){ 返回 false }else{ 返回 tru ...
- (文章也有问题,请自行跳过)react中的状态机每次setState都是重新创建新的对象,如需取值,应该在render中处理。
demo如下 class Demo4StateLearn extends React.Component { constructor(props) { super(props); this.state ...
- redis window 安装测试--记录
1.下载地址https://github.com/dmajkic/redis/downloads 2.打开一个cmd窗口,使用cd命令切换到指定目录(D:\redis\64bit)运行 redis-s ...
- get_digits
# coding=utf-8# 一.def digits(n): list1 = [] for each in n: list1.append(each) return list1print(digi ...
- lombok的简单介绍(2)
在和idea中整合遇到这样问题,实体对象不提示lombok的get/set方法,从网上找到以下方法,分享给大家
- Django settings介绍
""" Django settings for macboy project. Generated by 'django-admin startproject' usin ...
- libgdx自问自答
1.使用gdx-steup.jar生成的desktop项目导入idea运行报如下错误,如何解决? 答:原因是assets目录默认是普通目录,idea编译项目时不会把普通目录下的内容输出到classpa ...
- 如何生成.mobileprovision文件
如何生成.mobileprovision文件 本人视频教程系列 **.mobileprovision文件的生成的第一步就需要你提供一个用于开发的App ID 1. 创建App ID 创建一个bundl ...
- Redis学习---Redis操作之List
List操作,redis中的List在在内存中按照一个name对应一个List来存储 lpush(name,values) --> 实际上是左添加 # 在name对应的list中添加元素,每个新 ...