下拉子菜单不显示任何数据?

时间:2015-06-02 23:00:29

标签: javascript php jquery html codeigniter

我的codeigniter表格中有这个简单的下拉菜单。点击dzongkhag(区)时,它应该显示地理位置(城镇)列表,但是,它不会这样做。我所拥有的下拉菜单并不是最好的,但这是我尝试(数周)多次失败之后我想出的。如果有人可以帮助我/解决/建议,我将不胜感激。

以下是摘录。 view.php

<label >Dzongkhag: </label>
<select id="user_dzongkhag" name="dzongkhag" >
  <option>Select Dzongkhag</option>
  <option value="Bumthang">Bumtang</option>
  <option value="Chhukha">Chhukha</option>
  <option value="Dagana">Dagana</option>
  <option value="Gasa">Gasa</option>
  <option value="Haa">Haa</option>
  <option value="Lhuentse">Lhuntse</option>
  <option value="Monggar">Monggar</option>
  <option value="Paro">Paro</option>
  <option value="Pema Gatshel">Pema Gatshel</option>
  <option value="Punakha">Punakha</option>
  <option value="Samdrup Jongkhar">Samdrup Jongkhar</option>
  <option value="Samtse">Samtse</option>
  <option value="Sarpang">Sarpang</option>
  <option value="Thimphu">Thimphu</option>
  <option value="Trashigang">Trashigang</option>
  <option value="Trashi Yangtse">Trashi Yangtse</option>
  <option value="Trongsa">Trongsa</option>
  <option value="Tsirang">Tsirang</option>
  <option value="Wangdue Phodrang">Wangdue Phodrang</option>
  <option value="Zhemgang">Zhemgang</option>                
</select>

<label >Geog:</label>
<select id="user_geog" name="geog" >
  <option> select geog</option>
</select>

javascript(我在view.php而不是js文件夹中实现它)

$(document).ready(function(){
  $('#user_dzongkhag').change(function(){
    $('#user_geog').html('<option> Fetching...</option>');

    var user_dzongkhag =$('#user_dzongkhag').val();

    //alert(new_div);

    $.ajax({
      type:"post",

      data:"user_dzongkhag="+user_dzongkhag,
      url:"<?php echo site_url('ajax/select_auth_geog/'); ?>",
      cache:false,
      success:function(resp){
        //alert(resp);
        $('#user_geog').html(resp);
      }
    });
  });
});

Controller.php这样

public function select_auth_geog(){
  $user_dzongkhag= $this->input->post('user_dzongkhag');
  $returnGeog=$this->ajax_model->select_auth_geog($user_dzongkhag);
  foreach ($returnGeog as $key) {
    echo '<option value="'.$key['name'].'">'.$key['name'].' </option>';
  }
}

model.php

public function select_auth_geog($user_dzongkhag){
  if($user_dzongkhag=='Bumtang'){
    $user_dzongkhag=1;
  }elseif($user_dzongkhag=='Chhukha'){
    $user_dzongkhag=2;
  }elseif($user_dzongkhag=='Dagana'){
    $user_dzongkhag=3;
  }elseif($user_dzongkhag=='Gasa'){
    $user_dzongkhag=4;
  }elseif($user_dzongkhag=='Haa'){
    $user_dzongkhag=5;
  }elseif($user_dzongkhag=='Lhuntse'){
    $user_dzongkhag=6;
  }elseif($user_dzongkhag=='Monggar'){
  ......
  ........

1 个答案:

答案 0 :(得分:0)

尝试切换这两行,您可能会删除选择框值,然后将其存储在user_dzongkhag中。

$(document).ready(function(){
  $('#user_dzongkhag').change(function(){
    $('#user_geog').html('<option> Fetching...</option>');  <-------------

    var user_dzongkhag =$('#user_dzongkhag').val();         <-------------

    //alert(new_div);

    $.ajax({
      type:"post",

      data:"user_dzongkhag="+user_dzongkhag,
      url:"<?php echo site_url('ajax/select_auth_geog/'); ?>",
      cache:false,
      success:function(resp){
        //alert(resp);
        $('#user_geog').html(resp);
      }
    });
  });
});