1

こんにちは、StackOverFlow!

コードの説明 (HTML)

<input tabIndex="0" title="Please enter transaction amount." id="TR_Amount" style="width: 425px;" maxLength="10" value=""/>
<input name="TR_Amount" type="hidden" value=""/>

<BR />

<input tabIndex="0" title="" class="InfoColor" id="check_amt" style="width: 141px;" maxLength="30" readOnly="" value=""/>
<input name="check_amt" type="hidden" value=""/>

<BR />
<DIV>
<LABEL title="" class=DefaultBold>Reserve Amount: 
<LABEL tabIndex=-1 title="" class=AttentionColor>#SAvlAmt#</LABEL>
</LABEL>
</DIV> 

HTML には 2 つのテキスト ボックスがあり、1 つは編集可能で、もう 1 つは読み取り専用で、$ 記号のないボックスなしで値を取得する 2 つの非表示のボックスがあります。

最初の (TR_Amount) テキスト ボックスに数値を入力すると、2 番目のテキスト ボックスはぼかし/変更時にその金額を自動的にコピーします。

また、ページのロード時に自動的に置き換えられる値を持つラベルもあります。(したがって、 #SAvlAmt# は、データベースがシステムのその変数に対して保持する量になります) この値には 2 つの異なる値があります。$ 記号のあるものとないものは、ページが送信されたときに実行されます。

JavaScript

function amtGreatRes(){
    var ChkAmount = $('input[name="check_amt"]').val(); // Works
    var ReserveAmt = $('#AvlAmt').val(); // My confusion
    if(ChkAmount > ReserveAmt){
        jAlert('The payment amount entered exceeds the reserve amount for this transaction. Please correct payment amount.');
    }else{jAlert('You did it!');}
}

質問

問題/質問は次のとおりです。データベースに入力された値を最初に取得するにはどうすればよいですか?

次に、その金額を使用して、TR_Amount 入力ボックスに入力されたデータから生成された読み取り専用フィールドに入力された金額と比較しますか?

JSFiddle 現在の作業の JSFiddle - 進行中

読み取り専用フィールドを自動更新するためのコードは既に配置されています。したがって、主なことは、$ 記号なしでそのデータベースの値を取得する方法を考え出すことです。これにより、ユーザーが支払いのために箱から出してクリックすると、割り当てられた金額をはるかに超えて入力したことを知らせる警告ボックスが表示されます。この取引

4

1 に答える 1

1

ラベルから値を取得するには、これを試してください -

<LABEL tabIndex=-1 title="" class=AttentionColor id="myLbl">#SAvlAmt#</LABEL>

var ReserveAmt = parseFloat($('#myLbl').text().replace('$', ''));

//値を浮動小数点に変換する必要があるため、比較が機能しない理由を更新します-このように-

var ChkAmount = parseFloat($('input[name="check_amt"]').val());
var ReserveAmt = parseFloat($('#lblAmt').text().replace('$', ''));

jsフィドル

于 2013-07-23T13:52:21.503 に答える