簡體   English   中英

無法在 jQuery 中捕獲事件

[英]Unable to capture events in jQuery

我正在嘗試在 jQuery 中捕獲事件。 下面是我正在使用的片段。

console.log(selectElement);
      selectElement.on('selected', function(event) {
      console.log('Value ' + event.selected + ' selected.');
});

以下是瀏覽器控制台中的輸出。

jQuery.fn.init [select.coral-Select-select.coral-Select-select--native, prevObject: jQuery.fn.init(1), context: coral-multifield-item.coral3-Multifield-item, selector: "select[name="./selectlevel"]"]

我能夠捕獲 select 元素,但 selected 的事件處理程序不起作用。 如果您需要任何其他信息,請告訴我。 在此處輸入圖片說明

請參考js小提琴鏈接。 HTML 可能不准確,因為這些是珊瑚 ui 庫。 https://jsfiddle.net/vivekdhiman23/Le296qw1/2/

您可以在此元素上使用“更改”事件並獲取值。 例子:

$("select").on("change", function(){
    console.log($(this).val());
});

為此,您需要 jQuery。 $ 在純 javascript 中將是未定義的。 jsfiddle 示例具有相同的控制台錯誤。 在你的代碼中,你需要使用這個:

$('coral-multifield[data-granite-coral-multifield-name="./navtwoitems"]').each(function() {
            $(this).find("coral-multifield-item").each(function() {
                    var selectElement = $(this).find('select[name="./selectlevel"]');

                    selectElement.on("change", function() {
                      alert( "Handler for "+ $(this).attr("name") +" called." );
                    });
            });
      });

這樣,您將在控制台中看到選擇標簽的名稱。 我稍微修改了 jsfiddle。 你可以在這里查看: https : //jsfiddle.net/Le296qw1/8/

我希望這對你有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM