在这里需要一些帮助,我一直在这里寻找相关问题,但似乎没有什么能解决我的问题。好的,这就是它如何发展
我有一个简单的搜索功能,搜索我的数据库,我使用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);
}
答案 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