0

とてもシンプルな jQuery 電卓のセットアップができました。役立つ場合は、スクリプトと HTML を以下に貼り付けました。

それは完全に機能しますが、値の実際の内容の前に $ を挿入したいと思います。したがって、以下のスクリプトでは、最初のフィールドに 100 を入力すると、3 年間で月額 $100 の 10% 割引がいくらになるかが表示されます。ドル記号を表示する必要があるだけで、実際に値に追加する方が簡単な場合は...

また、数字のみを入力できる以下の機能が保持されていることを確認したいと思います。

何か案は?

HTML:

<form id="savings-calculator" action="#">
    <label>Your monthly premium:</label>
    <input id="premium-amount" name="premium" type="number" value="333" />
    <label>Your three year savings:</label>
    <input id="three-year-savings" class="circle secondary-circle" name="three-year-savings" type="text" value="1200" />
</form>

jQuery:

<script>
jQuery(document).ready(function($) {
$('#premium-amount').bind('keypress keydown keyup change',function(){
    var premium = parseFloat($(':input[name="premium"]').val(),10)
    var v = '';

    if (!isNaN(premium)){

        v = (premium * 36) * (0.10);
    }

    $(':input[name="three-year-savings"]').val(v.toString());
});    

});
</script>
4

1 に答える 1

0

次のように、コントロールに配置する文字列に単純に追加し、計算された値をそのままにしておくことができます。

$(':input[name="three-year-savings"]').val( '$' + v.toString());

$コントロールから値を取得すると、その中にが含まれますが、変更されないことに注意してくださいv。コントロールの値を使用する必要がある場合は、使用するreplace前に単純に使用できますparseFloat

v = parseFloat( $(':input[name="three-year-savings"]').val().replace( '$', '' ) );
于 2013-08-28T17:43:09.363 に答える