输入框中的空"",0,null的判断
改了一个小项目,里面有一个小的问题他们是这样提需求的。两个输入框,第一个输入框里面,输入的内容会对第二个输入框中的内容产生影响。具体是这样的:如果第一个输入框中的值不是“0”,那么第二个输入框就不能填写任何的数据,只能默认“0”。只有当第一个输入框中输入0的时候,第二个输入框才是可以输入的。这个需求同样的很简单。在自己测试的时候出现了一个小问题,就是当用户删除第一个输入框的内容的时候,居然没有走(input_val==“”)的这个判断,而是走的(input_val==0)的这个判断,当时有点懵逼啊。很是不理解。现在来整理一下,方便下次的时候使用。
其实当我们删除输入框的内容的时候,我们取到的值确实是"",但是这个时候js进行判断时候,会出现一个隐形的转换,就是0==“”是true,所以这个时候我们的条件就有错了。因为我们是用的if else判断的,而且我把这个判断等于0卸载了最上面,所以就这个时候就出错了。这里给自己记录一下,捎带着我自己写了一个测试的小demo,这里直接附上代码。直接粘贴到编辑器然后运行就可以了。
<html>
<head>
<title></title>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
</head>
<body>
<h1>input输入框中的空和0的判断</h1>
<input type="text" name="" id="input_one" value="" />
<p class="input_one_con"></p>
<p>判断时候和0相等:<i class="eq_0"></i></p>
<p>判断时候和null相等:<i class="eq_null"></i></p>
<p>判断时候和“”相等:<i class="eq_"></i></p>
<h2>结论:如果是删除了,没有数值了,那么和“”是相等的,但是和null是不相等的</h2>
</body>
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
$("#input_one").on("input",function(){
var input_val = $(this).val();
$(".input_one_con").text(input_val);
if(input_val==0){
$(".eq_0").text("true");
}else{
$(".eq_0").text("false");
}
if(input_val==null){
$(".eq_null").text("true");
}else{
$(".eq_null").text("false");
}
if(input_val==""){
$(".eq_").text("true");
}else{
$(".eq_").text("false");
}
})
console.log(null=="");
</script>
</html>
输入框中的空"",0,null的判断的更多相关文章
- C#中烦人的Null值判断竟然这样就被消灭了
作者:依乐祝 首发自:DotNetCore实战 公众号 https://www.cnblogs.com/yilezhu/p/14177595.html Null值检查应该算是开发中最常见且烦人的工作了 ...
- 关于页面上输入框中 空格 、0 、NULL 的处理 示例
ep.setPositionNum(get("positionNum").toString()); ep.setClasstype(get("classtype" ...
- java 增强for循环对于空集和null的判断
List<String> list = null; for (String str : list) {//会报空指针异常 System.out.println(str); } List&l ...
- 【Unity3D】中的空引用 Null Reference Exception
Null Reference Exception : Object reference not set to an instance of an object. 异常:空引用,对象的引用未设置到对象的 ...
- PHP中0、空、null和false的总结
php中很多人还不懂php中 0 , '' , null 和 false 之间的区别,这些区别有时会影响到数据判断的正确性和安全性,给程序的测试运行造成很多麻烦.另外在面试题中也会遇到这些问题,如下: ...
- 3-java中String值为空字符串与null的判断方法
java中String值为空字符串与null的判断方法 2018年01月21日 14:53:45 阅读数:1189 Java空字符串与null的区别 1.类型 null表示的是一个对象的值,而不是一个 ...
- php中0," ",null和false的区别
php中很多还不懂php中0,"",null和false之间的区别,这些区别有时会影响到数据判断的正确性和安全性,给程序的测试运行造成很多麻烦.先看一个例子: <? $str ...
- JS常用校验方法(判断输入框是否为空,数字,电话,邮件,四舍五入等)
JS常用校验方法: 1.判断输入框是否为空,为空时弹出提示框 2.关闭窗口 3.检查输入字符串是否为数字 4.强制把大写转换成小写 5.手机号码校验,长度为11位数字. 6.电子邮件校验 7.电话号码 ...
- mybatis sql中if判断传入Integer类型,传入0时,判断没有执行
数据库中字段 isDisable 0:否:1:是 xml中判断 <if test="isDisable != null and isDisable !='' "> AN ...
随机推荐
- 亲测可用,iptables实现NAT转发。
环境 服务器A:192.168.1.7 服务器B: 192.168.1.160 需求 实现将本机(192.168.1.7:7410)端口流量转发给(192.168.1.160:9200). 1. 内核 ...
- Java语言编程 - 搭建Java开发环境
2.1 JDK.JRE和JVM关系 要弄清楚JDK.JRE和JVM这三者之间的关系,先看如下图,有个感性的认识: JDK:Java Development ToolKit(Java开发工具包).JDK ...
- 女皇武则天:我不愿被 extends
01. 利用继承,我们可以基于已存在的类构造一个新类.继承的好处在于,子类可以复用父类的非 private 的方法和非 private 成员变量. is-a 是继承的一个明显特征,就是说子类的对象引用 ...
- 理解 Node.js 的 Event loop
问题 考察如下代码,脑回路中运行并输出结果: console.log("1"); setTimeout(function setTimeout1() { console.log(& ...
- org.springframework.cache.interceptor.SimpleKey cannot be cast to java.lang.String
springboot整合redis时,使用@Cacheable注解,如果方法的key参数为空,就会报org.springframework.cache.interceptor.SimpleKey ca ...
- 补习系列(19)-springboot JPA + PostGreSQL
目录 SpringBoot 整合 PostGreSQL 一.PostGreSQL简介 二.关于 SpringDataJPA 三.整合 PostGreSQL A. 依赖包 B. 配置文件 C. 模型定义 ...
- 面试官,你再问我 Bit Operation 试试?
在面试环节中,面试官很喜欢问一些特别的题目,这些题目有着特殊的解法,如果回答的巧妙往往能在面试中加分. 在这些题目中,位操作(Bit Operation)就是极具魅力的一种.今天,吴师兄就来分享 Le ...
- 8.使用aix拓展
本文拷贝自: http://aix.colintree.cn/zh/HowToInstallExtensions.html 并且强烈推荐 http://aix.colintree.cn 网站. 首先呢 ...
- 重庆3Shape TRIOS都有哪些功能
1.高质量的临床结果高准确度的数字化印模确保高质量的修复体密合度即时制备和印模确认就位修复体时无需多次调整和研磨2.轻松取模无需喷粉扫描无需印模材料,可保持操作台整洁无需重复取模3.更稳健的业务联系加 ...
- 零基础java的福音!史上最全最精简的学习路线图!
这是一个java系统学习路线,从零基础到项目框架开发,每一个阶段里面内容都标记的很清楚,如果你现在也在学习java,你可以跟着这个系统学习路线学,学完自己可以独立的完成项目框架开发,二线城市拿个7k+ ...