Вывести данные из базы данных для выбранного имени клиента - PullRequest
0 голосов
/ 02 мая 2020

Требуется отобразить все данные конфигурации конфигурации из базы данных для выбранного имени клиента.

У меня есть окно поиска (customer_name), когда пользователь ищет и выбирает конкретное имя клиента, необходимо отобразить все данные конфигурации этого клиента в поле подтверждения . Кроме отображения данных конфигурации в окне подтверждения, все остальное работает нормально.

Получение неопределенного значения в окне подтверждения для ui.item.config.

I необходимо инициировать второй ajax вызов (cust_config_list), когда пользователь выбирает любой из результат поиска . К вашему сведению, в базе данных будет несколько строк с именем клиента.

Я новичок в jQuery, любая помощь приветствуется.

Просмотр:

<input type="text" required id="customer_name" name="customer_name" class="form-control">

$( "#customer_name" ).autocomplete({
   source: function( request, response ) {
     // Fetch data
     $.ajax({
       url: "<?=base_url()?>index.php/Inquiry/userList",
       type: 'post',
       dataType: "json",
       async: true,
       data: {
         search: request.term
       },
       success: function( data ) {
         response( data );
       }
     });
     $.ajax({
       url: "<?=base_url()?>index.php/Inquiry/cust_config_list",
       type: 'post',
       dataType: "json",
       async: true,
       data: {
         search: request.term
       },
       success: function( data ) {
        response( data );
       }
     });
   },
   select: function (event, ui) {
     // Set selection
     $('#customer_name').val(ui.item.label); // display the selected text
     confirmDialog('Confirm', '<b>Below are the configuration types for the selected customer</b><br><br>'+ui.item.config, function () {               

            });

     return false;
   }
 });

Контроллер:

function __construct() {
        parent::__construct();
        $this->load->model('Inquiry_Model');
    }
 public function userList(){
        $postData = $this->input->post();
        $data = $this->InquiryForm_Model->getUsers($postData);   
        echo json_encode($data);
    }
    public function cust_config_list(){
        $postData = $this->input->post();
        $data = $this->InquiryForm_Model->getCustName($postData);
        echo json_encode($data);
    }

Модель:

function getUsers($postData){
        $response = array();
        if(isset($postData['search']) ){
          $this->db->select('DISTINCT(customer_name)');
          $this->db->where("customer_name like '%".$postData['search']."%' ");   
          $records = $this->db->get('inquiry')->result();   
          foreach($records as $row ){
             $response[] = array("label"=>$row->customer_name);
          }   
        }   
        return $response;
}   
function getCustName($postData){
        $response = array();
        if(isset($postData['search']) ){
          $this->db->select('customer_name,id,config');
          $this->db->where("customer_name like '%".$postData['search']."%' ");  
          $records = $this->db->get('inquiry')->result();   
          foreach($records as $row ){
             $response[] = array("config"=>$row->customer_name);
          }   
        }   
        return $response;   
     }  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...