Javascript 为什么我会收到一封“信”;对象不支持自动完成jquery方法;实现我的自动完成时出现运行时错误?
我已经意识到,对于我的autocomplete,我真的不需要使用ajax调用(我已经看到许多使用ajax调用的示例),我可以简单地使用以下内容:Javascript 为什么我会收到一封“信”;对象不支持自动完成jquery方法;实现我的自动完成时出现运行时错误?,javascript,jquery,autocomplete,runtime-error,Javascript,Jquery,Autocomplete,Runtime Error,我已经意识到,对于我的autocomplete,我真的不需要使用ajax调用(我已经看到许多使用ajax调用的示例),我可以简单地使用以下内容: $(document).ready(function () { var myData = jQuery.parseJSON(getProjects()); $("#inputSearchProject.ClientID").autocomplete(myData); }); 其中,getProjects()是一个小脚本,TheP
$(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>
因为我希望autocomplete仅在检测到我在输入控件中写入了某些内容时启动。你有什么建议为什么它不起作用吗
谢谢大家的建议。我已经解决了我的问题,但只是根据你给我的建议。我将把我的一小段代码放在这里,也许有类似问题的人将来会发现它很有用:
$(document).ready(function () {
var myData = jQuery.parseJSON(getProjects());
$("[id$='txtSearchProject']").keypress(function ()
{
$("[id$='txtSearchProject']").autocomplete({ source: myData});
})
});
//我添加了而不是.autocomplete(我的数据)--->.autocomplete({source:myData})您缺少jQuery UI脚本文件 在这里获取:
您缺少jQuery UI脚本文件 在这里获取:
根据您的来源,我猜您正在尝试使用jQueryUI插件进行自动完成。您确定jqueryUI的源代码包含在jQueryInclude之后的页面顶部吗?现在我的asp文件中包含了以下脚本:(这是我之前向您展示的小代码)(另外2个是jqueryUI的源代码。脚本的顺序必须正确。第一个脚本include应该是你的jQuery脚本include。第二个脚本应该是jqueryUI。所有其他脚本都应该在这些之后。你说得对,这实际上解决了我的错误,谢谢。但是自动完成仍然不起作用。你有什么建议吗(补充?:)我需要更多信息来说明为什么autocomplete不起作用,但我的第一个猜测是,要么是您的数据格式不正确,要么是有其他错误阻止了autocomplete方法的执行。如果您使用的是Firebug或Chrome,您应该能够查看控制台日志以获得更好的错误定义。根据您的来源,我将我猜你正在尝试使用jQueryUI插件进行自动完成。你确定jQueryUI的源代码包含在jQuery包含后的页面顶部吗?现在我的asp文件中包含了以下脚本:(这是我之前向你展示的小代码)(另外2个是jqueryUI的源代码。脚本的顺序必须正确。第一个脚本include应该是你的jQuery脚本include。第二个脚本应该是jqueryUI。所有其他脚本都应该在这些之后。你说得对,这实际上解决了我的错误,谢谢。但是自动完成仍然不起作用。你有什么建议吗(补充?:)我需要更多信息来说明为什么autocomplete不起作用,但我的第一个猜测是,要么是您的数据格式不正确,要么是有其他错误阻止了autocomplete方法的执行。如果您使用的是Firebug或Chrome,您应该能够查看控制台日志以获得更好的错误定义。我刚刚添加了2你链接中的.js脚本(顺便说一句,谢谢:),但还是一样。我的inputSearchProject-它是html输入。我应该更改控件吗?我很抱歉这些问题,但这是我第一次使用jquery:@Cropcircles查看Joel关于脚本顺序的评论。我刚刚从你的链接中添加了2.js脚本(顺便说一句,谢谢你:)),但还是一样。我的inputSearchProject-它是一个html输入。我应该改变控制吗?对于这些问题我很抱歉,但这是我第一次使用jquery:)@Cropcircles请参阅Joel关于脚本顺序的评论。
$(document).ready(function () {
var myData = jQuery.parseJSON(getProjects());
$("[id$='txtSearchProject']").keypress(function ()
{
$("[id$='txtSearchProject']").autocomplete({ source: myData});
})
});