【发布时间】:2016-08-11 05:10:03
【问题描述】:
我希望在不重新加载整个页面的情况下刷新特定 div 的数据,尽管这发生在我正在使用的代码中,但问题是整个页面的 css/布局也受到干扰。谁能告诉如何在不干扰布局的情况下刷新 div 控制器
class Admin extends CI_Controller
{
public function dashboard()
{
$data['main'] = "admin/header";
$data['instant_reqtotal'] = $this->admin_model->getreqtotal();
$this->load->view('admin/dashboard',$data);
}
}
查看
<div id="instanthirewidget">
<?php echo $instant_reqtotal; ?>
</div>
型号
public function getreqtotal()
{
$this->db->where('status','pending');
$query=$this->db->get('instanthire');
return $query->num_rows();
}
用于重新加载的脚本
<script type="text/javascript">
function loadlink(){
$('#instanthirewidget').load('<?php echo base_url(); ?>admin/dashboard',function () {
$(this).unwrap();
});
}
loadlink();
setInterval(function(){
loadlink()
}, 5000);
</script>
【问题讨论】:
-
为此进行 ajax 调用
-
顺便问一下,dashboard.php 是否正确。它不应该只是仪表板?
-
@Naveed Ramzan 抱歉,这是打字错误,已更正
-
@Mayank Pandey 试过了,但错误还是一样,实际上视图是在前一个视图之上加载的
-
@user3732711 :没关系。其次,在 CI 中,可以通过 Ajax 调用来处理对控制器的调用,而不仅仅是 LOAD。所以你需要使用 Ajax Post 调用。如果你只想使用加载,那么你需要执行这个函数并将输出保存在一个文件中,然后你可以加载那个文件。当然不是推荐的方法。
标签: javascript jquery mysql ajax codeigniter