我最近将jquery从1.8升级到1.11并且jquery组合框爆炸了。
首先,它给出了_renderItem的错误未定义,因此在检查了几个stackoverflow帖子后发现input.data( "autocomplete" )._renderItem = function( ul, item )...
应该更改为input.data( "ui-autocomplete" )._renderItem = function( ul, item )
。这摆脱了_renderItem问题,但整个组合框根本不起作用。它只是表示没有功能的文本框。
这是代码的部分
input.data( "ui-autocomplete" )._renderItem = function( ul, item )
{
return $( "<li></li>" )
.data( "item.autocomplete", item )
.append( "<a>" + item.label + "</a>" )
.appendTo( ul );
};
请帮助我,我在最近6个小时内一直坚持这个......
答案 0 :(得分:1)
在此链接中查看1.8到1.9的升级指南:
http://jqueryui.com/upgrade-guide/1.9/
你会注意到有些事情发生了变化,即:
准备jQuery UI 1.10
API重新设计弃用了许多功能,这些功能将在1.10中删除。您不必等待1.10.0版本,以便在删除1.8 API时查明您的代码是否有效。您可以使用$ .uiBackCompat标志来测试任何1.9版本
另一个例子:
Slider现在使用ui-slider-handle-index而不是index.ui-slider-handle。自动填充功能现在使用ui-autocomplete-item而不是item.autocomplete。
尝试找出从1.8到1.9的主要变化并进行测试。然后,如果没有帮助,请再次尝试1.9到1.10,依此类推。