Jus*_*zer 8 javascript debugging jquery autocomplete
我得到这个JS错误:
jquery-1.5.1.min.js:16Uncaught TypeError: Cannot set property '_renderItem' of undefined
d.d.extend._Deferred.f.resolveWithjquery-1.5.1.min.js:16
d.d.extend.readyjquery-1.5.1.min.js:16
d.c.addEventListener.A
Run Code Online (Sandbox Code Playgroud)
它来自我的application.js文件中的jquery UI自动完成插件的代码:
.data( "autocomplete" )._renderItem = function( ul, item ) {
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.topic.name + "</a>" )
.appendTo( ul );
};
Run Code Online (Sandbox Code Playgroud)
每当我加载一个没有自动完成代码所依据的文本字段的页面时,我都会收到此代码.为什么以及如何摆脱这个错误?
我想请注意,虽然我收到此错误,但我的应用程序正常运行.我是否应该担心这个错误?
Mar*_*ahn 10
$(...).data('autocomplete')
Run Code Online (Sandbox Code Playgroud)
未定义,您不能设置undefined属性.尝试:
var obj = $(...).data('autocomplete');
obj && (obj._renderItem = function(){
...
});
Run Code Online (Sandbox Code Playgroud)
当我将jquery ui从旧版升级到1.10.0时,这个问题出现了
只是改变
$('.foo').data("autocomplete")._render...;
Run Code Online (Sandbox Code Playgroud)
至
$('.foo').data("uiAutocomplete")._render...;
Run Code Online (Sandbox Code Playgroud)
源 JQueryUI 1.10.0自动完成renderItem问题