Jquery “更改事件”下拉列表的困境
您好,下面是我正在做的:Jquery “更改事件”下拉列表的困境,jquery,Jquery,您好,下面是我正在做的: $("#categorys").change(function () { //$(document).on('click', '#categorys', function(){ alert('changed or clicked'); }); 当我使用.change时,js调试器上不会发生任何错误,当我对同一下拉菜单使用on click事件时,它会返回警报。一旦下拉列表值更改,我将能够提醒this.val请帮助我使用此选项解决问题:
$("#categorys").change(function () {
//$(document).on('click', '#categorys', function(){
alert('changed or clicked');
});
当我使用.change时,js调试器上不会发生任何错误,当我对同一下拉菜单使用on click事件时,它会返回警报。一旦下拉列表值更改,我将能够提醒this.val请帮助我使用此选项解决问题:
$(document).on('change', '#categorys', function(){
alert($(this).val());
});
这是因为您对单击事件使用事件委派,所以您需要对更改事件执行相同的操作:
顺便说一句,只有在动态添加select时才会发生此行为。是否将categorys元素动态添加到页面?如果这解决了您的问题,那么几乎可以肯定的是,categorys是在事件绑定后添加到DOM中的。原始语法完全有效,但要求元素在绑定时存在。通过使用on语法,实际上是将事件绑定到文档,允许它捕获动态添加元素中冒泡的事件。
$(document).on('change', '#categorys', function(){
alert('changed or clicked');
});