Select2ドロップダウンを使用しており、ドロップダウンの選択に基づいていくつかの機能を実行する必要があります。
次のコードを試してみましたが、うまくいきませんでした。
$eventSelect.on("select2:select", function (e) { log("select2:select", e); });
$eventSelect.on("change", function (e) { log("change"); });
誰が私にこれをどのように機能させることができるか教えてもらえますか?
Select2バージョン.3.2を使用していますが、次のコードが機能しています
$("#id").on("change", function () { debugger; });
Webページが完全に読み込まれたことがわかったら、イベントを宣言してみることができます。私の場合、これが問題でした。
$(document).ready(function(){
$('#yourselect').on("select2:select", function(e) {
console.log($(this).val());
});
});
このコードを試してください
$eventSelect.select2().on("change", function(e) {
// mostly used event, fired to the original element when the value changes
log("change val=" + e.val);
})
Select2のドキュメントからコードを取得したことがわかります。
https://select2.github.io/examples.html#programmatic-control
彼らがそのコードの下でlog()と呼ばれる関数を定義していることに気づきましたか.
これは機能コードですが、それも含めましたか?
function log (name, evt) {
if (!evt) {
var args = "{}";
} else {
var args = JSON.stringify(evt.params, function (key, value) {
if (value && value.nodeName) return "[DOM node]";
if (value instanceof $.Event) return "[$.Event]";
return value;
});
}
var $e = $("<li>" + name + " -> " + args + "</li>");
$eventLog.append($e);
$e.animate({ opacity: 1 }, 10000, 'linear', function () {
$e.animate({ opacity: 0 }, 2000, 'linear', function () {
$e.remove();
});
});
}
または、console.log()を使用してコンソールに出力することもできます。