1

次のコードは、ラベル フィールドに保持されている価格の値を見つけるのにうまく機能します。ただし、テキスト領域に保持される数量が必要ですが、機能していません。

何か案は?

Javascript:

 var price = parseInt(ui.draggable.find(".price").html().replace("$ ", ""));
 var qty = parseInt(ui.draggable.find(".qty").html());

HTML:

<label class="price">$ 100</label>
  <input name="qty_1" type="text" class="qty" id="qty_1" value="1" size="2" maxlength="2">
4

2 に答える 2

2

フォーム要素の値を設定/取得するには、valの代わりにメソッドを使用する必要がありhtml/textます。

var qty = parseInt(ui.draggable.find(".qty").val(), 10);

また、radixinを指定する必要がありますparseInt

parseInt(string[, radix])

radix: 上記の文字列の基数を表す整数。このパラメーターはオプションですが、読者の混乱を防ぎ、予測可能な動作を保証するために、常に指定してください。基数が指定されていない場合、異なる実装では異なる結果が生成されます。

于 2012-09-21T21:26:26.283 に答える
0

別の解決策

var
    price     = $(".price").html().replace('$ ',''),
    price_val = parseInt(price),
    qty       = $("input[name='qty_1']"),
    qty_val   = parseInt(qty[0].value)
;

これらを2行にマージできますが、拡張コードを使用してデバッグする方が簡単な場合もあります。

于 2012-09-21T22:00:16.827 に答える