我正在尝试找到一种方法来使用带有回调源的jQuery自动完成,通过一个ajax json对象列表从服务器获取数据。
有人能给我指路吗?
我用谷歌搜索了一下,但找不到一个完整的解决方案。
发布于 2016-02-26 12:02:10
如果要返回一个复杂的json对象,则需要修改自动完成的成功函数,如下所示。
$.ajax({
url: "/Employees/SearchEmployees",
dataType: "json",
data: {
searchText: request.term
},
success: function (data) {
response($.map(data.employees, function (item) {
return {
label: item.name,
value: item.id
};
}));
}
});
发布于 2018-05-28 18:04:59
$(document).on('keyup','#search_product',function(){
$( "#search_product" ).autocomplete({
source:function(request,response){
$.post("<?= base_url('ecommerce/autocomplete') ?>",{'name':$( "#search_product" ).val()}).done(function(data, status){
response(JSON.parse(data));
});
}
});
});
PHP代码:
public function autocomplete(){
$name=$_POST['name'];
$result=$this->db->select('product_name,sku_code')->like('product_name',$name)->get('product_list')->result_array();
$names=array();
foreach($result as $row){
$names[]=$row['product_name'];
}
echo json_encode($names);
}
发布于 2020-06-24 21:25:23
我使用了$.each (data [i], function (key, value)
的结构,但是您必须预先匹配选择字段的名称和表单元素的名称。然后,在“成功”之后的循环中,自动完成"data“数组中的元素。做到这一点:autocomplete form with ajax success
https://stackoverflow.com/questions/9656523
复制相似问题