gpt4 book ai didi

javascript - 未捕获的类型错误 : Cannot read property 'length' of undefined JQUERY autocomplete

转载 作者:行者123 更新时间:2023-11-29 16:58:54 24 4
gpt4 key购买 nike

这个脚本是用到的, https://www.devbridge.com/sourcery/components/jquery-autocomplete/

我正在使用 jQuery 自动完成功能从我的数据库中搜索用户。

下面是返回 Json 的 Controller :

public function searchusers1() {
if ($_GET) {
$query = $this -> input -> get('query');

$searcharray = $this -> model_usermanage -> searchuser($query);

$a_json = array();
$a_json_row = array();
foreach($searcharray as $row) {
//$user_firstname = htmlentities(stripslashes($row['user_firstname']));
//$user_lastname = htmlentities(stripslashes($row['user_lastname']));
$user_email = htmlentities(stripslashes($row['user_email']));
//$a_json_row["user_firstname"] = $user_firstname;
$a_json_row["user_email"] = $user_email;

array_push($a_json, $a_json_row);
}
echo json_encode($a_json);
}
}

下面是我的 jQuery:

$('#reply_bcc').autocomplete({
serviceUrl: '<?php echo base_url(); ?>index.php/hi/test/searchusers1',
minChars: 3,
onSelect: function (suggestion) {
console.log('You selected: ' + suggestion.data + ', ' + suggestion.data);
}
});

这是我的 JSON 响应:

[{"user_email":"hi@test.com"},{"user_email":"hello@au.com"},{"user_email":"testing@123.com"},]

我的 HTML:

<div class="col-md-10">
<input type="text" name="reply_bcc" id="reply_bcc" autocomplete="off" class="form-control">
</div>

我的问题是:

我在控制台中遇到以下错误,并且在我的 html 输入中看不到此搜索值作为下拉列表:

Uncaught TypeError: Cannot read property 'length' of undefined

这是怎么回事?

谢谢!

最佳答案

文档解释了“来自服务器的响应必须是遵循 JavaScript 对象的 JSON 格式:”

{
// Query is not required as of version 1.2.5
"query": "Unit",
"suggestions": [
{ "value": "United Arab Emirates", "data": "AE" },
{ "value": "United Kingdom", "data": "UK" },
{ "value": "United States", "data": "US" }
]
}

你只是返回一个没有格式值/数据的数组。您可以在 PHP 中更改格式或使用“transformResult”函数为您的数组创建建议属性。

您应该在 PHP 代码中添加一个对象:

$obj = new stdClass();
$obj->suggestions = $a_json;
echo json_encode($obj);

关于javascript - 未捕获的类型错误 : Cannot read property 'length' of undefined JQUERY autocomplete,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29901178/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com