Intereting Posts
Как сделать разбиение на страницы из нескольких массивов и вычислить общее количество? PHP не может загружать динамическую библиотеку (mongo.so) разделять запятыми Проблема времени сеанса PHP Предупреждение: preg_match (): Внутренний pcre_fullinfo () Как организовать классы Luracast Restler для создания связанных конечных точек маршрута? Разрешать только определенные символы в строке php проверить расширение файла в форме загрузки PHP Изменить ключи массива Как удалить поле количества из страницы корзины для определенного атрибута продукта WooCommerce как сохранить сеанс активным, даже если браузер был случайно закрыт? bootstrap 3 разбиение на страницы с помощью codeigniter Когда я перехожу к Localhost и попробую имя пользователя и пароль, который он сообщает мне об ошибке? как сделать regexp не голодным с кавычками? Установка разрешений в двоичном формате

Ajax с полем выбора в codeigniter

У меня есть форма с двумя блоками выбора. один для города, а другой для этого района.

Мое требование. Когда кто-то выбирает город, области в городе должны быть захвачены из базы данных и отображены в другом поле выбора.

Я пытался, но у меня проблемы с моим ajax. вот мой код ниже.

Посмотреть

<div class="location-group"> <label class="-label" for="city"> Location </label> <div class=""> <select id="city_select"> <option value="0"> select</option> <?php foreach ($city as $cty) : ?> <option value="<?php echo $cty->city_id; ?>"><?php echo $cty->name; ?></option> <?php endforeach ?> </select> </div> </div> <div class="location control-group" id="area_section"> <label class="control-label" for="area"> Area </label> <div class="controls"> <select id="area_select"> <option value=""> Any</option> <?php foreach ($area as $ara) : ?> <option value="<?php echo $ara->ara_id; ?>"><?php echo $ara->name; ?></option> <?php endforeach ?> </select> </div><!-- /.controls --> </div><!-- /.control-group --> 

контроллер

 function __construct() { parent::__construct(); //session, url, satabase is set in auto load in the config $this->load->model('Home_model', 'home'); $this->load->library('pagination'); } function index(){ $data['city'] = $this->home->get_city_list(); $data['type'] = $this->home->get_property_type_list(); $this->load->view('home', $data); } function get_area(){ $area_id = $this->uri->segment(3); $areas = $this->home->get_area_list($area_id); echo json_encode($areas); } 

Модель

 function get_area_list($id){ $array = array('city_id' => $id, 'status' => 1); $this->db->select('area_id, city_id, name'); $this->db->where($array); $this->db->order_by("name", "asc"); $this->db->from('area'); $query = $this->db->get(); $result = $query->result(); return $result; } 

Ajax

 <script type="text/javascript"> $('#area_section').hide(); $('#city_select').on('change', function() { // alert( this.value ); // or $(this).val() if (this.value == 0) { $('#area_section').hide(600); }else{ //$("#area_select").html(data); $.ajax({ type:"POST", dataType: 'json', url:"<?php echo base_url('index.php?/home/get_area/') ?>", data: {area:data}, success: function(data) { $('select#area_select').html(''); $.each(data, function(item) { $("<option />").val(item.area_id) .text(item.name) .appendTo($('select#area_select')); }); } }); $('#area_section').show(600); }; }); </script> 

как только я выбираю город, он должен получить все области в городе из базы данных и отобразить его в поле выбора area_select .

Кто-нибудь может мне помочь, пожалуйста. Благодарю.