ユーザーがキーを押すと、テーブル行を追加していenterます。
以下のコードは奇妙な動作をしています。キーが入力フィールドにあるときにキーが押された回数に応じて行を追加します。ヒットした
場合にのみ行を追加したい。enter
以下のコードの何が問題なのか、誰か教えてもらえますか?
$(document).on('keypress', '#quantity_sold', function () {
var num = 0;
console.log('key pressed');
$(this).keypress(function (e) {
var code = (e.keyCode ? e.keyCode : e.which);
if (code == 13) {
e.preventDefault();
quantitySold = $("#quantity_sold").val();
rowTotal = parseInt(quantitySold) * unitPrice;
row = "";
insertRow();
console.log("Num inside if statement:" + num);
$("#inventory_name").val("");
$("#quantity_sold").val("");
$("#inventory_name").focus();
return false;
}
console.log("Num outside of if statement:" + num);
num++;
});
});
これに少なくとも1週間苦労しましたが、ここにコードを貼り付けた2番目に問題が見つかりました。
$(this).keypress(function(e){ この行を削除したところです。必要なのはそれだけです。