不能使用ajax从编码器函数获取数据


Can't get data from a codeigniter function with ajax

这是我目前得到的:

从模型返回数据的函数:

function get_user2()
{
    $this->load->model('my_model');
    $id=$this->input->post('users1');
    $users2=$this->my_model->get_relations($id);
    return $users2;
}   

模型函数:

function get_relations($usr)
{
        $this->db->where('id',$usr);
        $rel=$this->db->get('relacion');
    if($rel->num_rows!=0)
    {
        $relacion=array();
        foreach ($rel->result_array() as $row) 
        {
            $relacion[]=array(
                            'id'=>$row['id'],
                            'username1'=>$row['username1'],
                            'username2'=>$row['username2'],
                        );
        }
        return $relacion;
    }else{
        return false;
    }
}

在我看来:

<select name="users1" id="drop1">
<?php
    if($opciones!=false){
        foreach ($opciones as $row) {
            echo '<option value="'.$row['user_id'].'">'.$row['username'].'</option>';
        }
    }
?>
</select>
<script src="jquery.js"></script>
<script type="text/javascript">
$("#drop1").change(function(){
    $.ajax({
                type: "POST",
                url: "example.com/CI/index.php/evaluation/get_user2",
                data: "users1="+$('#drop1').val(),
                success: function(){
                    alert('it works!');
                }
            });
});
</script>

我想用控制器函数返回的选项填充第二个下拉框,但ajax请求没有做任何事情,所以我甚至没有得到那部分。谁能帮我指出哪里不对吗?我已经测试了控制器和模型的功能,它们是有效的。你能告诉我如何填写第二个下拉框的选项吗?非常感谢!

我在一个项目中有一个非常相似的代码,根据用户选择的岛屿获得一些城市。因此,当选择更改时,加载城市并启用第二次选择。主要区别在于传递数据的方式。

<script type="text/javascript">
$("#idisla").change(function(){
        if($("#idisla").val()!=""){
            var dato=$("#idisla").val();
            $.ajax({
                type:"POST",
                dataType:"html",
                url:base_url+"admin/centros/municipios_select",
                data:"idislajs="+dato,
                success:function(msg){
                    $("#idmunicipio").empty().removeAttr("disabled").append(msg);
                    callback();
                }
            });
        }else{
            $("#idmunicipio").empty().attr("disabled","disabled");
        }
});
</script>

函数只查看所选岛屿(id)中的城市

    function municipios_select()
    {
        //el idIsla viene dado por el value del combo islas
        $isla = $this->input->post('idislajs');
        $data['municipios'] = $this->municipios_model->obtenMunicipios($isla);
        echo $this->load->view("site/municipios_select",$data, TRUE);
    }