dtra49684 2015-06-24 01:49
浏览 26
已采纳

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

Need some help here, i've been searching for related issues here but nothing seems to answer my problem. Ok so here how it goes

I have a simple search function that search through my database and I used an ajax to pass the data and get back the response and I manage to do that but my problem is that I can't seem to display the response the way I wanted to.

Here's my 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);
    }
});

Here's the ajax response

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

I want to get the employee Name in there and display it in my page. How exactly am I gonna do that?

Thanks in advance. I'm still a newbie BTW

Here's the 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条回答 默认 最新

  • doufangyan6862 2015-06-24 01:53
    关注

    Try:

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

    Link to fiffle: https://jsfiddle.net/fcz53htw/ If you have more then one name, first add them to array, only then print then json_encode of the array. Now its wont wont work because you printing twice. Try change your php to this:

    $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条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵