为什么我得到'$(...)。自动完成不是一个功能'?

时间:2015-12-08 22:50:50

标签: javascript jsp firefox autocomplete

我正在尝试使自动完成工作,但Firebug正在向我显示此错误:

  

TypeError:$(...)。autocomplete不是函数。

我不知道为什么它不起作用,因为我导入了所有正确的文件以使我的自动完成工作。 这是我的图书馆:

<script type="text/javascript" src="<c:url value="resources/js/jquery.js"/>"></script>
<script src="<c:url value="/resources/js/jquery/1.10.2/jquery-ui.min.js"/>" ></script>
<script src="<c:url value="/resources/plugins/autocomplete/jquery.autocomplete.js"/>" ></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

这是我用于自动完成的行:

<script>
$("#services_autocomplete").autocomplete("getcountries.jsp");
</script>

2 个答案:

答案 0 :(得分:0)

仅加载jquery一次,并将其作为第一个加载。 这将解决您的问题。

答案 1 :(得分:0)

确保您只包含一个 jQuery版本。来自Google API的那个是不必要的,也完全过时了。

然后检查是否真的加载了jQuery,jQuery UI和你的自动完成插件。即查看Net panel内的内容,看看它们是否以黑色列出(而不是红色)。或者您也可以查看Script panel,看看'jquery.js','jquery-ui.min.js'和'jquery.autocomplete.js'是否列在其脚本位置菜单中。

如果它们是红色/不存在,则文件的路径是错误的。

如果所有文件都包含正确,您仍然需要将autocomplete()函数的调用放入$(),以确保在页面完全加载后执行该文件:

$(function(){
  $("#services_autocomplete").autocomplete("getcountries.jsp");
});

有关详细信息,请参阅documentation for the .ready()函数。