2

以下のように選択リストの選択値を設定しています

$("#typeFilter").val("0");

私の質問は、これを作ることですか、$("#typeFilter").changeイベントをトリガーしますか?

4

4 に答える 4

4

いいえ、値 use を設定した後にイベントをトリガーしたい場合、変更イベントはトリガーされませんtrigger。変更イベントは、JavaScript を使用しないデバイスからのインタラクションである場合にのみトリガーされます。

$("#typeFilter").val("0");
$("#typeFilter").trigger('change');

サンプルデモ

于 2013-05-16T06:22:11.537 に答える
3

いいえ、そうではありません。ユーザーの操作によって値が変更されない限り、変更イベントはトリガーされません。
自分で試してみることができます。テキストボックスの ID を選択します。IDが「inputEmail」だとしましょう。次のコードを試してください。

$("#inputEmail").change(function() {
    alert("changed");
});

次に、次のコード行を試してください。

$("#inputEmail").val("abc");

警告メッセージが表示されていないことに注意してください。

于 2013-05-16T06:21:48.230 に答える
3

いいえ、これでわかるようにトリガーしませんlive demo。値を設定した後、手動でトリガーする必要があります。

$("#typeFilter").change();
于 2013-05-16T06:22:53.387 に答える
1

いいえ。変わりません。これは私が使用したコードです:

$(document).ready(function(){
    setTimeout(function(){
        $("#test").val("3");
    }, 1000);
    $("#test").change(function(){
        alert("Changed!");
    });
});

したがって、変更をトリガーしたい場合は、次のようなものを使用できます。

$(document).ready(function(){
    $("#test").val("3").trigger("change");
    $("#test").change(function(){
        alert("Changed!");
    });
});

フィドル:
http://jsfiddle.net/praveenscience/kLJuS/
http://jsfiddle.net/praveenscience/kLJuS/1/

于 2013-05-16T06:24:49.647 に答える