if else && || ! 搅在一起,思维混乱了
两个问题:
一、怎么把题中onchange事件写个函数pd(),可以在多个这样的文本框写上onchange=pd()就能与它所对应的指定值进行对比判断?
二、1和2的判断程序错在哪里了?
例子和代码:
目的:判断文本框中随机输入的字符串是不是我指定的
aaa,bbb是我想指定给文本框1的字符串,ccc,ddd是我想指定给文本框2的字符串。
文本框1输入的字符串 不等于aaa或者不等于bbb是显示NO,等于aaa或等于bbb时显示OK。
文本框2输入的字符串 等于aaa或等于bbb时显示OK,不等于ccc或者不等于ddd是显示NO。
<p>1.用!==判断 <input type="text" id="textid1" name="题目1" value="" size="8"
onchange="javascript:if (value !== 'aaa'&& 'bbb'){
alert('NO');
}
else
alert('OK');
">(文本框1):输入bbb时怎么会显示NO?</p>
<p>2.用 ==判断 <input type="text" id="textid2" name="题目2" value="" size="8"
onchange="javascript:if (value == 'ccc'||'ddd'){
alert('OK');
}
else
alert('NO');
">(文本框2):好像随便输入什么都是OK</p>
------解决方案--------------------1.用!==判断 <input type="text" id="textid1" name="题目1" value="" size="8"
onchange="javascript:if (this.value !== 'aaa'&& 'bbb'){
alert('NO');
}
2. onchange="javascript:if (this.value == 'ccc'
------解决方案--------------------'ddd'){
alert('OK');
}
------解决方案--------------------if (value !== 'aaa'&& 'bbb')
等价于 if (value !== 'aaa') 且 if('bbb')
后面永远为真
所以缩写为 if (value !== 'aaa')
if (value == 'ccc'
------解决方案--------------------'ddd')
等价于 if (value == 'ccc') 或 if('ddd')
同样后面永远为真
由于条件是或
所有缩写为 if(true)
------解决方案--------------------