我意识到,对于我的自动完成功能,我实际上并不需要使用 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})
最佳答案
关于javascript - 为什么我在实现自动完成功能时收到 "Object does not support autocomplete jquery method"运行时错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11864123/