У меня есть случай цепочки выпадающих списков / выпадающих списков, где она подходит при редактировании данных, данные, которые были заполнены в раскрывающемся списке PIC, не изменяются, если изменяются данные, находящиеся в раскрывающемся разделе, если автоматическое раскрывающееся меню наPIC нужно изменить, но это не так, если созданные данные являются нормальными, чтобы быть нормальными, потому что в раскрывающемся списке они еще не заполнены, как я могу это исправить?
Контроллер здесь
public function viewCreated()
{
$departm = $this->db->get('office')->result();
$where = array('username' => $this->session->userdata('name'));
$data = array(
'id_monitoring' => $this->m_data->uniqueID(),
'dept' => $this->m_data->data_dept()->result(),
'pic' => $this->m_data->getNamefromDept()->result(),
'name' => $this->m_data->cek_name($where)->result(),
'departm' => $departm,
);
$this->load->view('manage/v_create', $data);
}
public function dataPicE($id)
{
$result = $this->db->where('department', $id)->get('admin')->result();
echo json_encode($result);
}
Просмотр здесь
<div class="form-group">
<label>Department</label>
<select class="form-control select2" style="width: 100%;" name="department" placeholder="Select Group" id="Depart" required>
<option value=""></option>
<?php foreach ($departm as $u => $value) { ?>
<option value="<?php echo $value->id; ?>"><?php echo $value->department; ?></option>
<?php } ?>
</select>
</div>
<div class="form-group">
<label>PIC</label>
<select class="form-control select2" style="width: 100%;" name="pic" placeholder="Select Group" id="PIC" required>
</select>
</div>
Маршрут здесь
$route['manage/v_edit'] = 'Admin';
$route['manage/v_edit/ajax/(:any)'] = 'dataPicE';
JS здесь
<script type="text/javascript">
$(document).ready(function(){
$('select[name="department"]').on('change', function(){
var departID = $(this).val();
if(departID){
$.ajax({
url: 'dataPicE/'+departID,
type: 'GET',
dataType: 'json',
success:function(data){
//$('select[name="pic"]').empty();
$('select[name="pic"]').show();
$.each(data, function(key, value){
$('select[name="pic"]').append('<option value="'+value.name+'">'+value.name+'</option>')
});
}
});
} else {
$('select[name="pic"]').empty();
}
});
});
</script>
Я надеюсь, что кто-то может помочь мне в обучении