2 回答
TA贡献1828条经验 获得超13个赞
我在这种情况下使用 ajax。
<select id="Firstclass" required>
<option value='1'>value1</option>
<option value='2'>value2</option>
</select>
<select id="Secondclass" required>
<option></option>
</select>
查询代码
$(document).on('change', '#Firstclass', function() {
var val= $(this).val();
$.ajax({
url: base_url+'Request/secondClass',
method: 'post',
data: {val: val},
dataType: 'json',
success: function(responseData) {
$('#Secondclass').empty();
$.each(responseData, function(i, p) {
$('#Secondclass').append($('<option></option>').val(p.val_ID).html(p.val_NAME));
});
},
});
});
服务器端
public function secondClass(){
$val=$this->input->post('val');
$secondClass=$this->RequestModel->getClass($val);
if($secondClass){
$secondClass=json_encode($secondClass);
print_r($secondClass);
}else {
echo 0 ;
}
TA贡献1906条经验 获得超3个赞
你不能只用 CI 做到这一点,我们可以在 jquery ajax 的帮助下实现,
看法
<!-- language: lang-or-tag-here -->
<label>Ciudad:</label><select class="form-control" name="idCiudad" id="idCiudad" required autocomplete="off">
<option value="">Seleccione</option>
<?php foreach($listaciudades as $ciudad):?>
<option value="<?= $ciudad['idciudad']?>"
<?php if ($idCiudad == $ciudad['idciudad']) : ?> selected<?php endif; ?>
>
<?= $ciudad['nombre']?>
</option>
<?php endforeach; ?>
</select>
<label>Comuna:</label>
<select class="form-control" name="idComuna" id="idComuna" required autocomplete="off">
<option value="">Seleccione</option>
</select>
在您的控制器上创建一个新功能
<?php
class your_controller{
//other codes
public function ajax_communas(){
//your code to fetch comunas
$data = array();
$ciudades_id = $this->input->post('ciudades_id');
if($country_id){
$data = $this->model_name->function_name_to_get_cammuna_via_ciudades_id($ciudades_id);
}
echo json_encode($data);
}
在模型上
function function_name_to_get_cammuna_via_ciudades_id($id){
$this->db->select('table_name.id, table_name.name');
$this->db->where("parent_id",$id);
$query = $this->db->get();
$result = ($query->num_rows() > 0)?$query->result_array():FALSE;
return $result;
}
在您的视图/js 文件中添加 jquery ajax 代码
$('#idCiudad').on('change',function(){
var idCiudad = $(this).val();
if(idCiudad){
$.ajax({
type:'POST',
url:'<?php echo base_url('controller/ajax_communas'); ?>',
data:'ciudades_id='+idCiudad,
success:function(data){
$('#idComuna').html('<option value="">Selecionee</option>');
var dataObj = jQuery.parseJSON(data);
if(dataObj){
$(dataObj).each(function(){
var option = $('<option />');
option.attr('value', this.id).text(this.name);
$('#idComuna').append(option);
});
}else{
//incase no data
$('#idComuna').html('<option value="">Not available</option>');
}
}
});
}else{
$('#idComuna').html('<option value="">Selcionee(or select one)</option>');
}
});
- 2 回答
- 0 关注
- 112 浏览
添加回答
举报