Codeigniter динамически зависимый выпадающий Ajax - PullRequest
0 голосов
/ 12 декабря 2018

У меня есть случай цепочки выпадающих списков / выпадающих списков, где она подходит при редактировании данных, данные, которые были заполнены в раскрывающемся списке 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>

Я надеюсь, что кто-то может помочь мне в обучении

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