【发布时间】:2025-11-26 16:25:02
【问题描述】:
我正在尝试实现自动完成。
我有一个类似的问题
未捕获的错误:语法错误,无法识别的表达式:
这是我的代码。
<script>
$(function(){
$('.search').keyup(function(e){
var input = $(this).val();
$.ajax({
type: "get",
url: "class/contact/get_contact_list.php",
data: {"current_user_id" : window.USER_DATA.USER.id_user, "type" : "verify", "search": input},
async: true,
success: function(data){
var outWords = $.parseJSON(data);
$('.data_contact').html('');
$('.data_contact').prepend($(Chat.append_into_contact_list(outWords,'search')));
// $('.data_contact').prepend('<div>'+input+'_'+outWords.response.length+'</div>'); //Fills the #auto div with the options
//$('.data_contact').append($(Chat.append_into_contact_list(outWords,'search')).delay(220).fadeTo('slow',1));
console.log(outWords);
}
})
})
});
</script>
我认为这是$('.data_contact').prepend($(Chat.append_into_contact_list(outWords,'search'))); 中的错误。
谁能提出问题的原因?
【问题讨论】:
-
data的 实际 值是多少?很有可能并不像预期的那样。 不要使用警报;使用控制台/调试器,可能还有网络监视器。 -
当你说 alert(data) 而不是 alert(outwords.length) 时你看到了什么?
-
对不起,我复制旧代码。我这样实现 $('.data_contact').prepend(''+input+'_'+outWords.length+'');而 outWords 是没有数量的。
-
这仅仅意味着对象
outWords没有length属性。问题是您试图访问不存在的属性。不要那样做。您只能访问存在的属性。 -
哦,我明白了。谢谢回答。我会学到更多。
标签: javascript jquery autocomplete