下面是我的代码的一部分。我没有为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 )
也无效!实际上,这就是我的真实脚本中的重写错误。但是我的preoblem仍然是相同的,它不会给我结束数字应该是greate ....并且直接成功保存。
编辑我想我找出了一些东西。在第一个文本框中,如果我将'10'作为值,第二个作为'9',那么JS似乎不会将9识别为较低的值。但如果我把'09'给出了所需的输出。我该如何处理?
答案 0 :(得分:3)
尝试改变:
else if ( txt3Val.value >= txt4Val )
到
else if ( txt3Val.value >= txt4Val.value )
答案 1 :(得分:2)
else if ( txt3Val.value >= txt4Val )
应该是
else if ( txt3Val.value >= txt4Val.value )
答案 2 :(得分:0)
再次使用比较HTML元素不会为您提供所需的结果。将.value
附加到txt4Val
的末尾以访问该元素的值:
else if ( txt3Val.value >= txt4Val.value ) {
}
答案 3 :(得分:0)
if( parseInt( txt3Val.value, 10 ) >= parseInt( txt4Val.value, 10 ) )