1

以下の Jquery プラグインを使用しています。値をマスクできます。ぼかしイベントでは、次のような検証を実行する必要があります。2 つのテキスト ボックスの値を取得して計算します。値のマスクを解除したり、float に変換したりする方法はありません。 http://github.com/plentz/jquery-maskmoney

4

3 に答える 3

2

適切な回答を得るには、より詳細な情報と、おそらくいくつかのコードを提供する必要がありますが、マスクされた入力の 10 進数値のみを取り除く方法を次に示しますblur(正規表現はあなたの友人です)。

function getFloat(text) {
    var regex = /\d+|\./g,
        matches,
        num = "";

    while(matches = regex.exec(text)) {
        num += matches[0];
    }
    return parseFloat(num) || 0;
}

$("#price1, #price2")
    .maskMoney({ showSymbol: true })
    .bind("blur", function() {
        var price1 = getFloat($("#price1").val());
        var price2 = getFloat($("#price2").val());

        $("#total").text((price1 + price2).toFixed(2));
    });

これが実際の例です: http://jsfiddle.net/andrewwhitaker/enJEe/

繰り返しますが、問題についてもう少し詳しく説明すると、質問が迅速かつ正確に回答される可能性が高くなります。

于 2011-05-02T23:58:43.383 に答える
0

プラグインの新しいバージョンを使用すると、これを行うことができます

$("#price1, #price2")
    .maskMoney({ showSymbol: true })
    .bind("blur", function() {
        var price1 = $("#price1").maskMoney('unmasked');
        var price2 = $("#price2").maskMoney('unmasked');

        $("#total").text((price1 + price2).toFixed(2));
    });
于 2013-12-27T02:04:54.760 に答える
-1

最も一般的な方法:

$("#id").unmaskMoney();

ただし、これもオプションです。

$("#id").unmask();

于 2012-11-15T11:25:11.283 に答える