codeigniter依赖的下拉错误

时间:2017-10-30 20:16:53

标签: codeigniter

这是我的代码。它不适用于codeigniter 3.0和jquery。我需要使用下拉依赖,所以我做了,但它将显示"错误发生..."在第一个下拉列表中选择任何项目后alert()

请查看我的源代码。我不知道出了什么问题。谢谢大家

查看:

    <script type="text/javascript">
    $(document).ready(function(){
        $('#senf').on('change', function(){
            var senf_id = $(this).val();
            if(senf_id == '')
            {
                $('#raste').prop('disabled', true);
            }
            else
            {
                $('#raste').prop('disabled', false);
                $.ajax({
                    url:"<?php echo base_url() ?>index.php/shoppings/get_subgroup/",
                    type: "POST",
                    data: {'senf_id' : senf_id},
                    dataType: 'json',
                    success: function(data){
                         alert('okkk');
                    },
                    error: function(){
                        alert('Error occur...!!');
                    }
                });
            }
        });
    });
</script>
<div class="form-group ">
<label for="group_name" class="control-label col-lg-2">group 1</label>
<select id="senf" name="group">
    <option value="" selected="selected">select</option>
    <?php
    foreach ($get_groups as $value) {
        $group_id = $value['group_shop_id'];
        $group_name = $value['group_shop_name'];
    ?>
    <option value="<?php echo $group_id; ?>"> <?php echo $group_name; ?> </option>
    <?php } ?>
</select>

<label for="raste" >group 2</label>
<select id="raste" name="raste">
     <option value="">select</option>
</select>
</div>

控制器:

    public function get_subgroup(){
    $id = $this->input->post('senf_id');
    $ajax_get_subgroup = $this->shopping_model->ajax_get_subgroup($id);
        $pro_select_box = '';
        $pro_select_box .= '<option value="">Select Province</option>';
        foreach($ajax_get_subgroup as $ajax_get_subgroup_value){
            $pro_select_box .= '<option>'. $ajax_get_subgroup_value->cat_shop_name .'</option>';
        }
        echo json_encode($pro_select_box);
}

MODEL:

    public function ajax_get_subgroup($id){
    $query = $this->db->get_where('cat_shopping_group', array('group_shop_id' => $id));
    return $query->result();
}

1 个答案:

答案 0 :(得分:0)

试试这个

控制器

public function ajax_get_subgroup() 
{
 extract($_POST);
 $tmp='';
 $sql = "SELECT * FROM cat_shopping_group where group_shop_id=$id";
 $data = $this->db->query($sql)->result_array(); 
 $tmp .="<option value=''>-- Select --</option>";
      foreach($data as $row) 
      {
        $tmp .="<option value='".$row['your_id']."'>".$row['cat_shop_name ']."</option>";
      }
      die($tmp);
 }`

AJAX

function get_data()
{
  var id = $('#senf').val()

  datana= 'id='+id
  $.ajax({
    type: 'POST',
    url: '<?=base_url()?>your_controller/ajax_get_subgroup',
    data: datana,
        error: function(data) {
          alert('Failed');
        },
        success: function(data) 
        {
          $('#raste').html(data) 
        }
       })
}


<select id="senf" name="group" onchange='ajax_get_subgroup();'>
   <option value="" selected="selected">select</option>
   <?php
       your code
    ?>
</select>
<select id="raste">
</select>

希望得到这个帮助。