0

jQuery 1.7.1 を使用しています。次のコードは、.click イベントを追加する追加オプションを選択メニューに追加します。このコードは、firefox/ie9 では問題なく動作しますが、[新しいオプションの追加] をクリックすると、ie7/8 で次のエラーが表示されます。私も運なしでselectイベントを試しました。ie7/8のようなレガシーブラウザでこれを機能させる方法を知っている人はいますか

$("select").append($('<option></option>').text("Add New Option").click(function(){
    alert("test");
}));   

JS エラー SCRIPT5022: 構文エラー、認識されない式: # jquery-1.7.1.js、行 4179 文字 2

JS フィドルの例

http://jsfiddle.net/gchristman/gucgG/3/

4

4 に答える 4

3

onchange イベントを使用する必要があります。代わりにこれを試してください:

$("select").append($('<option></option>').text("Add New Option")).change(function(){
    alert("test");
}));   

関連:クロムの選択オプション要素のクリックイベント

于 2012-04-17T20:07:30.233 に答える
2

クリックイベントをオプションに添付しないでください。選択時に変更イベントをサブスクライブし、追加したアイテムかどうかを確認してください。変更で識別できるように、新しいアイテムの値を 0 にしました。

$("select").append($('<option></option').text("Add New Option").val(0));

$("select").change(function () {
    if $("select option:selected").val() == 0) {
        alert("test");
    } 
});
于 2012-04-17T20:11:12.603 に答える
1

試す

.on("click", function() {
    alert("test");
}));

それ以外の:

.click(function() {
    alert("test");
}));

それが機能するかどうかを確認しますか?

于 2012-04-17T20:07:10.907 に答える