У меня есть код в моем коде, результат не отображается или не работает, выбор формы города по-прежнему пуст. Вот HTML:Как получить данные из API с помощью ajax для выбора (значение опции выпадающего списка) в Codeigniter?
<div class="form-group">
<label>Province</label>
<select class="form-control" name="province" id="province">
<?php foreach($state_data->data as $sd){ ?>
<option id="<?php echo $sd->code; ?>" value="<?php echo $sd->code; ?>" <?php echo (isset($this->session->userdata))?(($this->session->userdata('session_state_code') == $sd->code)?"selected":""):"";?>>
<?php echo $sd->name ;?>
</option>
<?php } ?>
</select>
</div>
<div class="form-group" id="city_section">
<label>City</label>
<select class="form-control" name="city" id="city">
<?php foreach($city_data->data as $cd){ ?>
<option value="<?php echo $cd->code; ?>" <?php echo (isset($this->session->userdata))?(($this->session->userdata('session_city_code') == $cd->code)?"selected":""):"";?>>
<?php echo $cd->name ;?>
</option>
<?php } ?>
</select>
</div>
этого Javascript, чтобы получить данные от контроллера:
$('#province').on('change', function() {
var id = $(this).val();;
$.ajax({
type: "POST",
dataType: 'json',
url: "<?php echo base_url() ?>edit_profile/get_city",
data: {
id: $(this).val()
},
success: function(data) {
$('select#city').html('');
for (var i = 0; i < data.length; i++) {
$("<option />").val(data[i].code)
.text(data[i].name)
.appendTo($('select#city'));
}
}
});
}
и это контроллер для получения данных из API:
public function get_city(){
$m_url = URL_API;
$function = "get_location";
$i = $_REQUEST['id'];
$url = $m_url . "/" . $function . "?" . "t=city" . "&" . "i=".$i;
$json_data = file_get_contents($url);
$data = json_decode($json_data);
}
любая ошибка u получить в консоли? –
нет, я не получаю @ManinderpreetSingh –