0

嗨,下面是我的代码的一部分。我没有得到想要的输出,else if ( txt3Val.value >= txt4Val )但如果我调整它就可以else if ( document.getElementById('txt3') >= document.getElementById('txt4') )了。有人能告诉我为什么会这样吗?谢谢。

......AND THE CODE READS
    else if(document.form1.GWchk.checked == true) 
        {
        var txt3Val = document.getElementById('txt3');
        var txt4Val = document.getElementById('txt4');
            if(txt3Val.value == "" || txt4Val.value == "")
            {
                alert ("You need to enter both starting and ending number \nof the cheque book for GlW."); return false;
            }
            else if ( txt3Val.value >= txt4Val ) 
            { 
                alert ("Ending cheque number should be of greater value"); return false;
            }
            else
            {
            alert ("Successfully saved your entry1."); return false;
            }
        }

亮点:对不起,代码else if ( txt3Val.value >= txt4Val.value )也不起作用!实际上,这就是我的真实脚本上的重写错误。但是我的问题仍然存在,它没有给我结束数字应该更大......并且直接成功保存。

编辑我想我想通了。在第一个文本框中,如果我将“10”作为值,第二个作为“9”,那么 JS 似乎不会将 9 识别为较低的值。但如果我输入“09”,它会给出所需的输出。我该如何处理?

4

4 回答 4

3

尝试改变:

else if ( txt3Val.value >= txt4Val ) 

else if ( txt3Val.value >= txt4Val.value ) 
于 2012-10-29T15:01:29.670 回答
2
else if ( txt3Val.value >= txt4Val )

应该

else if ( txt3Val.value >= txt4Val.value )
于 2012-10-29T15:00:34.823 回答
0

再次使用比较 HTML 元素不会给您想要的结果。追加.value到末尾txt4Val以访问该元素的值:

else if ( txt3Val.value >= txt4Val.value ) {

}
于 2012-10-29T15:00:45.193 回答
0
if( parseInt( txt3Val.value, 10 ) >=  parseInt( txt4Val.value, 10 ) )
于 2012-10-29T15:01:56.820 回答