我遇到了一些脚本更改选择/收音机/复选框的情况。这会触发 change 事件。但是,我需要一个单独的事件来告诉我用户更改了元素。显然,当从脚本触发更改时,它会注册为用户更改。
当您更改选择/收音机/复选框的值时,有没有办法阻止脚本触发更改事件?
我遇到了一些脚本更改选择/收音机/复选框的情况。这会触发 change 事件。但是,我需要一个单独的事件来告诉我用户更改了元素。显然,当从脚本触发更改时,它会注册为用户更改。
当您更改选择/收音机/复选框的值时,有没有办法阻止脚本触发更改事件?
jQuery.trigger()
从代码触发事件时使用并传递一个附加参数。
例如:
$('select').bind('change', function(e, isScriptInvoked) {
if (isScriptInvoked === true) {
// some code for when artificial
} else {
// some code for when organic
}
});
// Trigger the event.
$('select').trigger('change', [true]);
尝试:
function changeEvent(){
if(this.type.toLowerCase()=='select' || this.type.toLowerCase()=='radio' || this.type.toLowerCase()=='checkbox')
return false;
else{
//Your code here
}
}