0

我正在使用 codeigniter 并尝试使用带有 jQ​​uery 的 Ajax 调用来获得结果。我有一个选择框,其中从数据库中填充选项,如下所示:

echo "<select id=\"agent_select\" name =\"agent_select\" >";
echo "<option id=\"0\" value=\"0\" selected=\"selected\">Select Agent Name</option>";
$rs=$this->Model_ocperformance->get_all_activeusers_except($this->session->userdata('id'));
foreach($rs->result() as $row){
    echo "<option id=\"".$row->id."\" value=\"".$row->id."\" >".$row->name."</option>";
}
echo "</select>";
echo "<div id=\"results\">
</div>";

我的 JQuery 脚本是这样的:

$(document).ready(function(){
        $("#agent_select").change(function(){
            $.ajax({    
                    type:"POST",
                    url:"<?=base_url()?>index.php/ajax/find_status",
                    data:{agent_id:$(this).val()},
                    success:function(response){
                        alert("Response: "+ response);},
                    error:function(){
                        alert("Failed to retrieve information");
                        }
                });

        });
    });

当我更改选择框时,它应该调用 ajax 函数并从 ajax/find_status 函数中检索数据。但不幸的是,什么也没发生。我错过了什么或犯了错误吗?

4

2 回答 2

0

抱歉,我在页面中的其他脚本有问题,这就是为什么这不起作用。@Jai 如果我添加php而不是=那么我也必须使用echo. 但是在我修复了页面的其他脚本之后,我使用的那个起作用了。

于 2013-03-19T18:12:08.997 回答
0

我猜错误在这里:

 url:"<?=base_url()?>index.php/ajax/find_status"

试试这个:

url:"<?php base_url(); ?>/index.php/ajax/find_status"

尝试添加php而不是简短的=,并尝试/在 index.php 之前添加

于 2013-03-19T17:19:44.210 回答