如何从PHP中提取AJAX的部分响应

时间:2015-06-24 01:49:43

标签: javascript php jquery ajax

在这里需要一些帮助,我一直在这里寻找相关问题,但似乎没有什么能解决我的问题。好的,这就是它如何发展

我有一个简单的搜索功能,搜索我的数据库,我使用ajax传递数据并取回响应,我设法做到这一点,但我的问题是我似乎无法显示响应的方式我想。

这是我的Ajax

$.ajax({
    url: url, /// defined url
    type: type, ///defined type
    data: data, ///defined data
    success: function(response){
    //here I want to display something like
         $('#display').html(the name of the employee);
    }
});

这是ajax响应

{
    "employee": [{
    "badgeno": "123                ",
    "name": "John G. Doe",
    "success": true
}]
}
{
    "employee": [{
    "badgeno": "456                ",
    "name": "Jane G. Doe",
    "success": true
 }

我想在那里获取员工姓名并将其显示在我的页面中。我到底该怎么做?

提前致谢。我还是新手BTW

这是PHP

 $getEmp = $this->Employee_model->search_emp($employee);
    $count = count($getEmp);

    if($getEmp){
        for ($i=0; $i < $count; $i++) { 
            $data['employee'][$i] = array(
                'badgeno' => $getEmp[$i]->BADGENO,
                'name' => $getEmp[$i]->NAME,
                'success' => true
            );
            echo json_encode($data);
        }
        print_r($data);

        //$this->load->view('admin/home', $data);
    }

2 个答案:

答案 0 :(得分:1)

尝试:

employee_name= data.employee[0].name;
$('#display').html(employee_name);

链接到fiffle: https://jsfiddle.net/fcz53htw/ 如果你有多个名字,首先将它们添加到数组中,然后再打印数组的json_encode。 现在它不会工作,因为你打印两次。 尝试将您的php更改为:

$getEmp = $this->Employee_model->search_emp($employee);
$count = count($getEmp);

if($getEmp){
    for ($i=0; $i < $count; $i++) { 
        $data['employee'][$i] = array(
            'badgeno' => $getEmp[$i]->BADGENO,
            'name' => $getEmp[$i]->NAME,
            'success' => true
        );
        //echo json_encode($data);
    }
    echo json_encode($data);

    //$this->load->view('admin/home', $data);
}

答案 1 :(得分:0)

在php上你写两次结果删除 printr 只使用 json_encode