5

この select 要素に対して change イベントが 2 回発生する理由がわかりません。

<form name="contactform">
  <label for="requesttype">Request Type:</label>            
  <select name="requesttype" class="reqtype">
     <option value="1" selected>General Comment / Request</option>
     <option value="2">No Cost Services Quote</option>
  </select>
</form>

この jquery コードを使用する場合:

$(function() {
    $(".reqtype").change(function(){
        alert($(".reqtype option:selected").val());
    })
});

クラス「reqtype」を使用している唯一の場所がselect要素であることを再確認しました。どんな助けでも大歓迎です。

4

2 に答える 2

10

同様の問題があり、見つけたすべての解決策を試しました。私のために働いた唯一のものは、変更チェックの前にバインドを解除することでした(上記のDevPatで言及されています):

jQuery("#wfselect").unbind(); 
jQuery("#wfselect").change(function() { getWFDetail(); });

于 2015-04-11T20:43:57.150 に答える
2

このような状況では、イベント ハンドラーをバインドする前に .unbind() を使用すると、クリーンな JS が得られます。jQueryのドキュメントを参照できます

于 2013-10-05T12:57:08.647 に答える