动态依赖下拉CodeIgniter ajax无法正常工作

时间:2017-12-13 07:28:03

标签: php jquery ajax codeigniter

我试图在codeigniter中使用ajax填充第一个下拉列表中的第二个下拉列表但是它似乎没有在我的ajax中填充或显示警报错误,它什么也没做。我有什么想念或错字吗?非常感谢你。

我的观点

<select name="carbrand" class="form-control" required="true" id="carbrand">
<option value="" selected disabled>--- Select Car Brand ---</option>
<li role="separator" class="divider"></li>
                        <?php
                        foreach($groups as $row){
                        echo '<option value="'.$row->brand.'" >'.$row->brand.'</option>';
                                }
                                ?>

   </select>
   </div>
   //SECOND DROPDOWN
   <div class="form-group">
   <select name="carmodel" class="form-control" id="carmodel" disabled="">
   <option value="" selected disabled>--- Select Car Model ---</option>
   </select>

   //SCRIPT
   <script>
   $(document).ready(function(){
   $('#carbrand').on('change', function(){
    var carbrand = $(this).val();
    if(carbrand == '')
    {
      $('#carmodel').prop('disabled', true);
    }
    else
    {
      $('#carmodel').prop('disabled', false);
      $.ajax({
        url:"<?php echo base_url() ?>/quote_aia/get_models",
        type:"POST",
        data:{'carbrand' : carbrand },
        dataType: 'json',

        success: function(data)
        {
          $('#carmodel').html(data);
        },
        error:function()
        {
          alert('Error');
        }
      });
    }
   });
 });

我的控制器

     public function get_models()
     {  
    $this->load->model('quote'); 
    $carbrand = $this->input->post('carbrand');
    $brand = $this->quote->get_model_query($carbrand);
    if(count($brand)>0)
    {
        $cb_select = '';
        $cb_select .='<option value="">Select Model </option>';
        foreach ($brand as $brando) {
            $cb_select .='<option value="'.$brando->model.'"> '.$brando->model.'</option>';
        }
        echo json_encode($cb_select);
    }
}

我的模特

 public function get_model_query($carbrand)
{
    $query = $this->db->get_where('tbl_fmv', array('brand' => $carbrand));
    return $query->result();
}

非常感谢你帮助我

1 个答案:

答案 0 :(得分:0)

现在修复我只是重新编码它不知道我错过了什么,但它的修复