没有响应.chzn-select两个带有ajax和codeigniter的下拉列表

no respone .chzn-select two dropdown with ajax and codeigniter

本文关键字:ajax 下拉列表 两个 codeigniter chzn-select 响应      更新时间:2023-09-26

需要帮助每个人 为什么我的代码出错 我想做一个两个下拉列表,。 一个下拉列表到主数据,第二个下拉列表到数据主数据中的子级.. 如果我不能从 jquery 中制作 .chzn-select 没关系,但如果操作编辑子数据,则响应是错误的,. 然后我做了.chzn-select,但没有任何反应, 这是我的代码:

/我的观点jquery.min.js 和 chosen.jquery.js 和 Selected.css 已加载

<script type="text/javascript">
 $(".chzn-select").chosen().change(function(){
    alert('here');
    $("#rack > option").remove();  
    var id_lantai = $("#id_lantai").val(); 
    $.ajax({
        type: "POST",
        url: "<?php echo base_url(); ?>power/get_rack_perlantai"+id_lantai, 
        success: function(rack){
            $.each(rack,function(id_rack,nama_rack){ 
                var opt = $('<option />');   
                        opt.val(id_rack);
                        opt.text(nama_rack);
                $('#rack').append(opt);
            });
        }
    })
}); 
</script>  
<tr><td>FLOOR *</td><td>:</td>
           <td>                  
                <select data-placeholder="Floor" class="chzn-select" style="width:200px;" tabindex="2" id="id_lantai" class="required" name="id_lantai" >
                <option value="" val_nm_prd="">-SELECT FLOOR -</option>
                <?php 
                foreach($id_lantai as $u){
                if($u['id_lantai']==$val){
                $selected="selected";
                }else{
                $selected="";
                }
            ?>
            <option value="<?=$u['id_lantai']?>" <?=$selected?> ><?=$u['lantai']?></option>
            <?php } ?>
            </select>
        </td> 
    </tr>  
    <tr><td>RACK *</td><td>:</td>
       <td>                  
            <select data-placeholder="Rack" class="chzn-select" style="width:200px;" tabindex="2" id="id_rack" class="required" name="id_rack" >
            <option value="" val_nm_prd="">-SELECT RACK -</option>
            <?php 
                foreach($id_rack as $u){
                if($u['id_lantai']==$vall()){
                $selected="selected";
                }else{
                $selected="";
                }
            ?>
            <option value="<?=$u['id_rack']?>" <?=$selected?> ><?=$u['nama_rack']?></option>
            <?php } ?>
            </select>
        </td> 
    </tr>    

我的控制器

function get_rack_perlantai($idlantai)
{    
     header('Content-Type: application/x-json; charset=utf-8');
     echo(json_encode($this->power_model->get_rack($idlantai)));
} 
/

/我的模型

    function get_lantai() {
    $this->db->select('id_lantai, lantai');
    $query = $this->db->get('xl_lantai_server');
    $lantaivariabel = array();
    if ($query -> result()) {
     foreach ($query->result() as $lantaix) {
     $lantaivariabel[$lantaix -> id_lantai] = $lantaix -> lantai;
     } 
        return $lantaivariabel;
     }
     else 
     {
        return FALSE;
     }
} 
//Query untuk ajak lantai & rack

    function get_rack($idlantai = null)
    {
         $this->db->select('id_rack, nama_rack');
         if($idlantai != NULL){
         $this->db->where('id_lantai', $idlantai);
         }
         $query = $this->db->get('xl_rack');
         $xl_rack = array();
         if($query->result()){
         foreach ($query->result() as $rack) {
         $xl_rack[$rack->id_rack] = $rack->nama_rack;
            }
         return $xl_rack;
         }
         else
            {
         return FALSE;
            }
    }  

对不起,我的英语不好,.:)

第一个问题是在你的ajax调用检查url中,它应该像下面这样,然后你可以在你的控制器中获取传递的值,也不需要在你的ajax调用中输入类型:"POST",因为你没有发送任何数据。

url: "<?php echo base_url(); ?>power/get_rack_perlantai/"+id_lantai, 

在追加变量之前,请考虑最后一个斜杠"/"。