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」を値として入力し、2番目を「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 に答える