<html>
<body>
<input type="text" value="0" id="x1" onblur="ThisEvent()"/>x1</br>
<input type="text" value="0" id="x2">x2 </br>
<script>
var x1 = document.getElementById("x1");
var x2 = document.getElementById("x2");
function ThisEvent(){
if (x1=1) {x2.value--;}else{
if (x1=2) {x2.value++;}else{
if (x1=3) {x2.value+0;}}}
}
</script>
</body>
</html>
似乎只触发第一个 if 语句并忽略 else 情况。任何帮助将不胜感激
最佳答案
=
是一个赋值运算符。
==
& ===
是比较运算符。 (参见 this question 了解它们之间的区别)
它在第一个 if
处停止声明因为 x1=1
返回1
,这是事实。
一旦切换到使用比较运算符,您应该使用 x1.value == 1
比较 <input>
的数值,或者您可以使用 x1.value === "1"
.
关于javascript - onblur支持多个if else语句吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37473066/