javascript - 为什么我在实现自动完成功能时收到 "Object does not support autocomplete jquery method"运行时错误?

标签 javascript jquery autocomplete runtime-error

我意识到,对于我的自动完成功能,我实际上并不需要使用 ajax 调用(我已经看到了许多使用 ajax 调用的示例),我可以简单地使用以下内容:

$(document).ready(function () {
    var myData = jQuery.parseJSON(getProjects());
    $("#inputSearchProject.ClientID").autocomplete(myData);
});   

哪里,getProjects()是一个小脚本和 TheProjects是一个属性,它使用自动完成的建议 JSON 字符串进行初始化。

<script type="text/javascript">
    function getProjects() {
        return '<%= this.TheProjects %>';
    }
</script>

调试时,我注意到 myData 收到了值,但我仍然收到运行时错误:“Microsoft JScript 运行时错误:对象不支持属性或方法‘自动完成’” - 即使我已经搜索过,但我还没有'没有找到答案。

编辑:我已经解决了这个错误(这是一个愚蠢的错误:)新手的错误)

我已将代码更改为:

$(document).ready(function () {
     var myData = jQuery.parseJSON(getProjects());
     $("[id$='txtSearchProject']").keypress(function () 
   {
     $("[id$='txtSearchProject']").autocomplete(myData);
  })
 });

因为我希望仅当检测到我在输入控件中写入了某些内容时才启动自动完成功能。您对为什么它不起作用有什么建议吗?

<小时/>

谢谢大家的建议。我已经解决了我的问题,但只是根据我从你那里收到的提示。我将把我的一小段代码放在这里,也许有类似问题的人将来会发现它很有用:

$(document).ready(function () {
 var myData = jQuery.parseJSON(getProjects());
 $("[id$='txtSearchProject']").keypress(function () 
  {
       $("[id$='txtSearchProject']").autocomplete({ source: myData});
  })
});

//我添加了而不是.autocomplete(my data) --->.autocomplete({ source: myData})

最佳答案

您缺少 jQuery UI 脚本文件。

在这里获取:

http://jqueryui.com/download

关于javascript - 为什么我在实现自动完成功能时收到 "Object does not support autocomplete jquery method"运行时错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11864123/

相关文章:

javascript - 如何停止 MVC RedirectToRouteResult JavaScript?

javascript - 使用 javascript 设置新的 onclick 属性不起作用

iphone - Xcode 4 自动完成错误

java - 有没有办法在 netbeans IDE 中用代码完成 java 的 null 检查?

javascript - 如何在 React-Native 中选择 ListView 的一项?

javascript - 切换表 :not first column 的显示

javascript - 如何在循环列表时根据条件更改 className?

jquery - 加载完成永远不会被调用

jquery 自动完成不会清除无序列表

javascript - <head> 使用浏览器打开时不加载脚本