2

キーアップ、ぼかし、キープレスの異なるイベントを持つ入力フィールド (各オブジェクトの価格を格納する) を持つフォームがあります。ユーザーがフィールドをタブで移動すると、JS は各入力フィールドをループして、以前の値から変更されているかどうかを確認します (そしてそれに基づいて計算を実行します)。(代わりに .change および .keypress イベントを使用してみました-残念ながら、それらはキーアップ後に起動するように調整されていたため、キーアップ前に起動する必要があります)。

各入力の初期値のグローバル変数配列を保存し、それに対して現在の値をチェックします。しかし、何らかの理由で、各入力をループしてその .val() をチェックすると、ユーザーが現在選択している入力の選択が解除されます。.attr("value") についても同じことが起こります。この特定の呼び出しが問題であることを知るために十分にデバッグしました。たとえば、.val() を呼び出す代わりに乱数を代用すると、完全に機能します。なぜこれが起こっているのか?私は機知に富んでいます。

4

1 に答える 1