这里需要一些帮助,我一直在这里搜索相关问题,但似乎没有任何东西可以回答我的问题。好的,这是怎么回事
我有一个简单的搜索功能,可以搜索我的数据库,我使用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
}
我想获取其中的员工姓名并将其显示在我的页面中。我具体该怎么做?
提前致谢。顺便说一句,我还是个新手
这是 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);
}
最佳答案
尝试:
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);
}
关于javascript - 如何从 PHP 中提取 AJAX 的部分响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31016282/