Jquery ui jquery ui自动完成小部件的全局覆盖事件
我想覆盖autocomplete的默认焦点事件,这样我就不必每次调用autocomplete时都覆盖它。然而,我不知道如何用我的方法覆盖事件。选项工作正常,但事件不是:Jquery ui jquery ui自动完成小部件的全局覆盖事件,jquery-ui,autocomplete,Jquery Ui,Autocomplete,我想覆盖autocomplete的默认焦点事件,这样我就不必每次调用autocomplete时都覆盖它。然而,我不知道如何用我的方法覆盖事件。选项工作正常,但事件不是: $.widget( "custom.autocompleteExt", $.ui.autocomplete, { autoFocus: true, focus: function(event, ui){ console.log(ui); event.preventDefault(); } }); 如
$.widget( "custom.autocompleteExt", $.ui.autocomplete, {
autoFocus: true,
focus: function(event, ui){
console.log(ui);
event.preventDefault();
}
});
如果您查看以下内容:
每个事件都有一个相应的回调,该回调作为选项公开
在小部件实例化时,事件处理程序作为选项传递。要拥有默认事件处理程序,只需将其作为默认选项传递:
$.widget( "custom.autocompleteExt", $.ui.autocomplete, {
options: {
autoFocus: true,
focus: function(event, ui){
console.log(ui);
event.preventDefault();
}
}
});
$("#my-input").autocompleteExt();
// can still be overridden with:
$("#my-input").autocompleteExt({focus:null});
请注意,自动对焦
和所有其他选项也是如此。问题中的代码片段实际上不会起任何作用
例如: