0

入力時にリストが自動更新されないのはなぜですか? 何を入力しても、リストは同じです。

「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);
    }
  }
4

1 に答える 1

0

これを完全にテストしていないので間違っているかもしれませんが、オートコンプリートは POST リクエストではなく GET リクエストを送信すると思います。したがって

$q = $this->input->post('term', TRUE);

何ももたらしません。代わりに、あなたは書くべきです

$q = $this->input->get('term', TRUE);
于 2013-01-13T02:14:53.947 に答える