我正在尝试捕获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/
答案 0 :(得分:1)
您可以在此elemenet上使用“ change”事件并获取值。示例:
$("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." );
});
});
});
这样,您将在控制台中看到select标签的名称。 我对jsfiddle进行了一些修改。您可以在这里检查: https://jsfiddle.net/Le296qw1/8/
我希望这对您有用。