两个问题:
一、怎么把题中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.   

    更正一下:
    文本框2输入的字符串 等于ccc或等于ddd时显示OK,不等于ccc或者不等于ddd是显示NO。
      

  2.   

    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');
          }
      

  3.   

    if (value !== 'aaa'&& 'bbb')
    等价于 if (value !== 'aaa') 且 if('bbb')
    后面永远为真
    所以缩写为 if (value !== 'aaa')if (value == 'ccc'||'ddd')
    等价于 if (value == 'ccc') 或 if('ddd')
    同样后面永远为真
    由于条件是或
    所有缩写为 if(true) 
      

  4.   

    我逻辑运算很差很差
    if (value !== 'aaa'&& 'bbb')写成if (value !== (...))形式,也用不好;
    写成这样我就理解了,呵呵:if (value !== 'aaa'&& value !== 'bbb')嗯,多个文本框时this也是不可缺的?
      

  5.   


    <body>
        <input type="text" onchange="func1(this.value)" /><br />
        <input type="text" onchange="func2(this.value)" /><br />
        <input type="text" onchange="func3(this.value)" /><br />
        <input type="text" onchange="func4(this.value)" />
        <script>
            var func1 = function (value) {
                if (value !== 'aaa' && 'bbb') { alert("Y"); }
                else { alert("N"); }
                //以上代码等于 if (value !== 'aaa'){ alert("Y"); }else { alert("N"); }
            }
            var func2 = function (value) {
                if (value === 'ccc' || 'ddd') { alert("Y"); }
                else { alert("N"); }
                //以上代码等于 alert("Y");
            }
            var func3 = function (value) {
                if ((value !== 'aaa') && value !== 'bbb') { alert("Y"); }
                else { alert("N"); }
            }
            var func4 = function (value) {
                if ((value === 'ccc') || value === 'ddd') { alert("Y"); }
                else { alert("N"); }
            }
        </script>
    </body>
    代码最好不要写在html标签里
      

  6.   

    document.body.onchange = function(e) {
        var e = e || window.event;
        var target = e.target;
        if(target.type == 'input') {
            switch(target.className) {
                case 'input_0':
                    if (target.value !== 'aaa' && 'bbb') { alert("Y"); }
                    else { alert("N"); }
                    break;
                case 'input_1':
                    if (target.value !== 'aaa' && 'bbb') { alert("Y"); }
                    else { alert("N"); }
                    break;
                case 'input_2':
                    if (target.value !== 'aaa' && 'bbb') { alert("Y"); }
                    else { alert("N"); }
                    break;
                case 'input_3':
                    if (target.value !== 'aaa' && 'bbb') { alert("Y"); }
                    else { alert("N"); }
                    break;
                
            }
        }
    }