因为我是codeigniter和ajax的新手,所以任何人都可以帮我。我从我的控制器向ajax函数发送数组但是我如何访问该数组元素。我在这里发布我的代码。 提前谢谢。
public function index()
{
$Modules = $this->General_model->AllMoudules();
$data['result'] = $this->printTree($Modules);
$output = array(
'html'=>$this->load->view("Add_user",$data),
'data' => $data
);
echo json_encode($output);
}
和ajax功能
$("#user").on("click",function(){
var url=static_url+'/User';
$.ajax({
type:"POST",
url:url,
success:function(output)
{
$(output).each( function (index, o) {
alert (o.data);
});
}
});
});
答案 0 :(得分:2)
控制器:
public function index()
{
$Modules = $this->General_model->AllMoudules();
$data['result'] = $this->printTree($Modules);
$output = array(
'html'=>$this->load->view("Add_user",$data,true),
'data' => $data
);
echo json_encode($output);
}
**Javascript:**
$("#user").on("click",function(){
var url=static_url+'/User';
$.ajax({
type:"POST",
url:url,
success:function(output)
{
console.log(output.data);
console.log(output.html);
});
}
});
试试这个。
答案 1 :(得分:1)
要在字符串中加载视图,您需要添加第三个参数以加载视图,如下所示:
$output = array(
'html'=>$this->load->view("Add_user", $data, true),
'data' => $data
);
要访问您的ajax响应,请尝试以下代码
success:function(output)
{
console.log(output.html);
}
答案 2 :(得分:1)
使用array.length获取数组的长度。 然后循环
答案 3 :(得分:0)
你应该像这样使用ajax数据类型作为json
$.ajax({
type:"POST",
url:url,
dataType: 'json',
success: function (data) {
alert(data.key);
}
});