如何解决这个问题?我已经为这个问题苦苦挣扎了 4 个多小时。
TypeError: this._on is not a function
我的代码就在那里
this.input = $( "<input>" )
.appendTo( this.wrapper )
.val( value )
.attr( "title", "" )
.addClass( "custom-combobox-input ui-widget ui-widget-content ui-state-default ui-corner-left" )
.autocomplete({
delay: 0,
minLength: 0,
source: $.proxy( this, "_source" )
})
this._on( this.input, {
autocompleteselect: function( event, ui ) {
ui.item.option.selected = true;
this._trigger( "select", event, {
item: ui.item.option
});
},
最佳答案
我知道这是一个旧的死线程,但对于像我一样遇到此错误的其他人来说,这是一个错误出现的原因。标记为正确答案的答案并不正确。提问者正在询问 jquery 组合框插件,这是问题中的代码片段的来源。错误出现在
this._on
在本例中,“this”指的是 jquery-ui 小部件对象,从版本 1.9.0 开始,该对象有一个名为“_on”的方法。最可能的问题是提问者要么不包含 jquery-ui,要么使用 1.9.0 之前的 jquery-ui 版本,而该版本没有该方法。如果出现此错误,请确保已加载 jquery-ui 并打开 jquery-ui 文件并搜索“_on”(如果没有找到问题所在)。
关于jquery - TypeError : this. _on 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29852679/