2 Условное выпадающее в codeigniter - PullRequest
0 голосов
/ 04 сентября 2018

Район Мастер стол:

enter image description here

Таблица округов:

enter image description here

Районный мастер Район

У меня есть страница формы, в которой есть раскрывающийся список «Категория». В моей таблице районов сохранен код района и название категории. На основании выпадающего списка «Категория» необходимо отобразить названия районов, представленные в основной таблице районов .... Я могу заполнить выпадающий список, но когда я это делаю, я получаю коды районов, а не название района ... Кто-то, пожалуйста, помогите !!!

Моя страница просмотра:

   <select name="category" id="category">
   <option value="Category 1">Category 1</option>
   <option value="Category 2">Category 2</option>
   <option value="Category 3">Category 3</option>
   </select>

   <select name="placename" id="placename">
   <option value="">Please select a Place</option>  
   </select>

Контроллер:

    public function ajax_place_list() 
     { 
     $this->load->helper('url'); 
     $this->load->model('JcMeetingExpense_model'); 
     $data['district'] = $this->JcMeetingExpense_model->getplace(); 
     echo json_encode($data);
     }

Модель:

     function getplace()
      { 
      $this->db->where('district_code',$this->input->post('category'));
      $query = $this->db->get('district');
      return $query->result(); 
      }

Сценарий

    <script>
     jQuery(document).ready(function($) {
     $("#category").on('change', function() {
     var category= $(this).val();

     if(category){
       $.ajax ({
        type: 'POST',
        url: 'JcMeetingExpense/ajax_place_list',
        data: { category: category},
        success : function(response) {
            var response = $.parseJSON(response);
            $('#placename').val(response.district); 

        },error:function(e){
        alert("error");}
         });
        }
     });
     });

  </script>

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018

Я думаю, что в district столбце таблицы (district) аналогично district master столбце таблицы (district_code), затем

использовать внутреннее соединение с главной таблицей района в модели

$this->db->select('*');    
$this->db->from('district');
$this->db->join('District_Master', 'district.district= District_Master.district_code');
$this->db->where('district.district_code',$this->input->post('category'));
$query = $this->db->get();

используя этот запрос, вы можете получить имя из таблицы district_master и использовать имя в выпадающем списке

0 голосов
/ 04 сентября 2018

вы можете просто использовать ajax, чтобы получить только название района и прослушивание, даже при изменении или размытие, в раскрывающемся списке категории, когда вы получаете значения из базы данных, например, вы использовали запрос, подобный этому, в части модели

function getplace()
      { 
        $this->db->where('district_code',$this->input->post('category'));
        $this->db->join('District_Master', 'district.district= District_Master.district_code');//added this
        $this->db->select("District_Master.district_name");//add this
        $this->db->from("district");
        $query = $this->db->get();
        return $query->result(); 
      }

тогда для выпадающего списка района используйте

<select><option value="//call district_code here "> //call district_name here</option></select> 

вызовите вышеуказанную вещь с вашим объектом, так как вы сказали, что вы заполнили данные в раскрывающемся списке, это может быть одной из ошибок, попробуйте и прокомментируйте, если есть какая-либо ошибка

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...