2

人が a に整数値 5 を入力するTextboxと、自動的に .00 が最後に追加され、最後に5.00と言うことができますか?

<asp:TextBox ID="txtAmountTransfer" runat="server" Width="55%" CssClass="right"></asp:TextBox>
4

2 に答える 2

9

.toFixed(2)ゼロを追加するものを使用できます

js Fiddleの例については、これを参照してください

于 2012-12-03T17:16:46.583 に答える
6

@ CR41G14 は正しいです。.toFixed(2) だけで十分です。

どこで、どのように、入力ボックスの変更イベントを使用することをお勧めします。これは、ユーザーにとって最も邪魔にならないからです。(ぼかしイベントも無理はありません)

テキスト フィールドの値は文字列になるため、@Snuffleupagus が指摘するように解析する必要があります。あなたの場合、parseFloat をお勧めします。これは、フィールドが 5.2 を入力するユーザーを処理する可能性があり、5.20 になる可能性があるためです。(parseInt を使用すると、5.00 になります)。

追加の注意事項の 1 つは、ユーザーが数値以外の文字 (または実際には解析されない値) をフィールドに入力すると、NaN が表示されることを認識していることです。これは、実際にはかなり合理的です。

jQuery の使用:

$('#txtAmountTransfer').change(function(){
    $(this).val(parseFloat($(this).val()).toFixed(2))
});

ネイティブ コードを使用した同様の例:

var textField = document.getElementById('txtAmountTransfer');
    textField.onchange = function(){
        this.value = parseFloat(this.value).toFixed(2);     
    }
于 2012-12-03T17:58:19.887 に答える