为什么我输入时列表不会自动更新?无论我输入什么,列表都是一样的。
我希望能够输入“wj”,它只会列出以“wj”开头的项目。
JS
$(function()
{
$("#part_num_id").autocomplete({
source: "partnum/get"
});
});
控制器
public function get()
{
$q = $this->input->post('term', TRUE);
$this->load->model('partnum_model');
$this->partnum_model->get_partnum2($q);
}
模型
function get_partnum2($q)
{
$this->db->select('*');
$this->db->like('part_num', $q);
$query = $this->db->get('item_history');
if($query->num_rows > 0)
{
foreach ($query->result_array() as $row)
{
$new_row['label']=htmlentities(stripslashes($row['part_num']));
$new_row['value']=htmlentities(stripslashes($row['id']));
$row_set[] = $new_row; //build an array
}
echo json_encode($row_set);
}
}
答案 0 :(得分:0)
我可能错了,因为我没有彻底测试过这个, 但我相信自动完成会发送一个GET请求,而不是一个POST请求。 因此
$q = $this->input->post('term', TRUE);
不会带给你任何东西;相反,你应该写
$q = $this->input->get('term', TRUE);