2

労働時間を計算するスクリプトを書く必要があります。下部のフィールドに合計する必要がある 6 つの時間数のテーブルがあります。

HTML は次のようになります。

<table>
 <tr>
  <td><input type="text" name="amount[]" class="countAmount"></td>
  <td>(...)</td>
 </tr>
 <tr>
  <td><input type="text" name="amount[]" class="countAmount"></td>
  <td>(...)</td>
 </tr>
 <tr>
  <td><input type="text" name="amount[]" class="countAmount"></td>
  <td>(...)</td>
 </tr>
 <tr>
  <td>Total: <span id="total"></span></td>
 </tr>
</table>

countAmountクラスの値をまとめてカウントしようとしています。

jQuery コードをどこから始めればよいかわかりません。私が試したことはすべて無駄でしたが、主な問題は、空の値を処理する方法と、値を INT として処理する方法です。

4

1 に答える 1

3

入力を見つけるには:

var inputs = $('input.countAmount');

数値に変換して空白を処理するには:

var num = parseInt($(input).val(), 10);
if (!isNaN(num)) {
    // It's a valid number, not blank, not "a" or "q", etc.
}

それらをループするには、 を使用しますeach

そう:

var total = 0;
$('input.classAmount').each(function() {
    var num = parseInt(this.value, 10);
    if (!isNaN(num)) {
        total += num;
    }
});

...ループ内なので、にthisなりinput、入力の値を取得するために jQuery は必要ありませんvalue。プロパティは問題ありません。

total次に、それをスパンに入れます:

$("#total").text(String(total));
于 2012-12-03T07:53:24.263 に答える