我想使用echo php将ajax中的数据显示到模型中,我已经制作了ajax并且没有错误。
这是我的模特
public function detail($id_branch) {
$this->db->select('TR_BRANCH.*');
$this->db->from('TR_BRANCH');
$this->db->where('BRANCH_ID', $id_branch);
$query = $this->db->get();
return $query->result();
}
我的控制器
Public function detail($id_branch){
$data = $this->main_model->detail($id_branch);
echo json_encode($data);
$this->load->view('template/pages/home_index', $data);
}
我的ajax
function coba(id_branch) {
$('#placeholder').hide();
$('#placeholder').show(function(){
$.ajax({
url:"<?php echo base_url() ?>home/detail/" + id_branch,
success(res){
// alert(id_branch)
}
})
});
}
我的观点
<div id="placeholder">
<div class="row">
<div class="panel panel-default">
<div class="panel-heading clearfix">
<p><?php echo $data->DISPLAY_NAME; ?></p>
</div>
</div>
</div>
如果我
<?php echo $data->DISPLAY_NAME; ?>
在我的模态中,我收到了像Undefined variable:data这样的错误。结果数据json_encode已经出现在基于网络的id_branch中。怎么解决?请帮忙
答案 0 :(得分:0)
请参阅:https://codeigniter.com/user_guide/general/views.html
查看接收$data
个键(及其值)作为片段,而不是整个$data
变量。
因此,在您的“我的观点”中,它应该是echo $DISPLAY_NAME;
。
希望这有帮助!
答案 1 :(得分:0)
当您在Ajax请求中收到DISPLAY_NAME时,您无法使用$ data-&gt; DISPLAY_NAME,
您需要为p tag&amp;在ajax成功方法中更新其值
<p id="displayName"></p>
success(res)
{
// alert(id_branch)
$("#displayName").html(Read Value from res data);
}
答案 2 :(得分:0)
我假设您要将视图返回到ajax,并且您只想获取一条记录。执行以下操作:
public function detail($id_branch) {
$this->db->select('TR_BRANCH.*');
$this->db->from('TR_BRANCH');
$this->db->where('BRANCH_ID', $id_branch);
$query = $this->db->get();
return $query->row();
}
控制器:
public function detail($id_branch){
$data = $this->main_model->detail($id_branch);
//echo json_encode($data); // why??
$this->load->view('template/pages/home_index', $data);
}