Javascript 为什么jQuery change()方法启用元素?
下面对select元素的方法调用序列将初始选中的选项设置为值为-5的选项,然后触发“change”事件Javascript 为什么jQuery change()方法启用元素?,javascript,jquery,Javascript,Jquery,下面对select元素的方法调用序列将初始选中的选项设置为值为-5的选项,然后触发“change”事件 $('#abCategory') .val(5) .change() .prop('disabled', true) ; 由于某些原因,没有像.prop()方法调用所预期的那样禁用元素。如果移除change()方法,则元素将被禁用 为什么会这样?如何触发change()事件并同时禁用元素?上述问题的原因是包含此select元素的组件中的其他地方出现了错误的jQuery选择器。更正后,上述代码
$('#abCategory')
.val(5)
.change()
.prop('disabled', true)
;
由于某些原因,没有像.prop()方法调用所预期的那样禁用元素。如果移除change()方法,则元素将被禁用
为什么会这样?如何触发change()事件并同时禁用元素?上述问题的原因是包含此select元素的组件中的其他地方出现了错误的jQuery选择器。更正后,上述代码可以正常工作。:输入被禁用。您是否拥有不存在
.prop
的旧版本jQuery?或者你在某个地方把一个事件绑定到更改事件?@Niels-这也是我最初的想法。。但是OP说,当.change
被删除时,它就可以工作了,这很奇怪。。。您是否查看了侦听该元素更改的内容,并查看了它的功能?请在触发更改之前尝试此操作。取消绑定(“更改”)
,以便我们知道是否发生了change
事件。