Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
Javascript,if condition works without && logical operator when && is present it doesnt work
如果#nameT
id
中字符的长度小于<
3或大于<
大于20,则我希望错误消息显示。当我使用&&
逻辑运算符时,如果我逐个执行代码,则当&&
不存在时,它无法正常工作。
<style>
.name{
border: .5px solid #C0C0C0;
margin-left: 1em;
margin-right: 1em;
padding: .7em;
margin-bottom: 1em;
}
#error{
display: inline-block;
color: #727171;
border:1px solid #C0C0C0;
padding: .5em;
margin-top: .5em;
display:none;
}
label{
color:grey;
}
</style>
</head>
<body>
<label>Name :<input class="name" id ="nameT" onblur="check()" type="text"></input></label>
<div id="error">Error please type less than 15 characters</div><br/>
<label>Password :<input class="name" type="password"></input></label>
<script language="javascript" type="text/javascript">
function check() {
var length = document.getElementById("nameT").value.length;
var error = document.getElementById("error");
if(length < 20 && length < 3){
error.style.display="inline-block";
}
}
</script>
</body>
length
的值不能同时大于20和小于3。
我认为你试图做的是设置错误显示的长度是大于20或小于3,如果是这样,你需要使用or(||)逻辑运算符
if(length > 20 || length < 3){
error.style.display="inline-block";
}
当使用AND
运算符时,两个操作数都必须为true,然后逻辑运算符才会返回true。在你的情况下,这根本不可能。
您需要使用||
(或)运算符。只有当长度大于20,同时小于3时,才会输入当前的if
分支,正如您所看到的,这是永远不会发生的。
if (length > 20 || length < 3) {
...
相关文章:
- Javascript逻辑运算符和字符串/数字
- Javascript,如果条件在没有&&逻辑运算符当&&它不起作用
- 用于验证JS中逻辑运算符表达式的正则表达式
- 为什么在javascript函数声明中使用逻辑运算符
- 为什么这个while循环不能使用AND逻辑运算符
- 逻辑运算符混淆
- IF ELSEIF语句中的Java脚本逻辑运算符
- 为什么JavaScript中的逻辑运算符是关联的
- 布尔表达式-与AND、OR逻辑运算符混淆以及它们的工作方式
- Javascript 逻辑运算符:多个 ||语法困境
- 我可以在文档中放入逻辑运算符吗.querySelectorAll?如果是,如何
- 如何使用逻辑运算符 JavaScript 或 jQuery
- angularJS-使用逻辑运算符内联的多个过滤器
- 具有逻辑运算符的复杂三元运算符
- Javascript逻辑运算符||将0读取为假值.有什么好办法解决这个问题吗
- 闭包模板中的逻辑运算符
- 为什么ecmascript5说&&如果任一操作数未定义,逻辑运算符将引发ReferenceError异常
- JavaScript:逻辑运算符`A&&B`
- Javascript&运算符逻辑
- Javascript逻辑运算符&&用于分配属性