1

金額が異なるドロップダウンのあるフォームがあります...$50、$100など。問題はjQueryが$50を50として認識しないことであり、正規表現やその他の方法を使用して$ 50の前にあるドル記号を除外して、2つの値(その値*入力フィールド)を乗算できるようにします。

2つの値を乗算した後、合計を合計IDでスパンに追加しようとしています。

編集:HTMLを編集できません。

HTML:

<span class="Amount">
    <select name="Amount" class="wpcf7-form-control  wpcf7-select">
        <option value="$50">$50</option>
        <option value="$75">$75</option>
        <option value="$100">$100</option>
        <option value="$150">$150</option>
        <option value="$300">$300</option>
    </select>
</spa>

<span class="Qty">
    <input type="text" name="Qty" size="2" maxlength="2">
</span>

<span id="total">total: </span>

JS:

$('.Qty input').keyup(function() {
    var quantity = parseFloat($(this).val());

    //this returns NaN
    var dollars = $('span.Amount select').val();

    $('#total').text((quantity * dollars )); 
});​
4

2 に答える 2

2

'$'を削除するだけです

$('.Qty input').keyup(multiply);
$('span.Amount select').change(multiply);
function multiply() {
    var quantity = parseFloat($('.Qty input').val());

    var dollars = $('span.Amount select').val().substr(1);

    $('#total').text('$'+(quantity * dollars )); 
}​

http://jsfiddle.net/mowglisanu/Y5YnF/1/

于 2012-11-30T02:47:46.100 に答える
0

$フィールド値にを含まないでください。これは金額の単なる表示装飾であり、使用する値や、使用するWebサーバーへのPOSTに含めるべきではありません。

于 2012-11-30T02:04:36.703 に答える