【问题标题】:Not able to refresh div automatically in codeigniter无法在 codeigniter 中自动刷新 div
【发布时间】: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


【解决方案1】:

发生这种情况是因为您在视图中返回视图。像这样改变你的方法:

public function dashboard()
{
    $data['main'] = "admin/header";
    $instant_reqtotal = $this->admin_model->getreqtotal();

    echo $instant_reqtotal;

    exit;
}

$.ajax({
    url : '...',
    method : '...',
    data : {...},
    success : function(response)    // response contains the $instant_reqtotal value in it
    {
        $('#instanthirewidget').html(response);
    }
});

【讨论】:

  • 我正在尝试加载一个视图,然后在该视图中单独加载标题视图,这样如果标题发生更改,我不必去每个视图进行更改,如果我改变我的仪表板控制器,它不会满足我的目的
  • 除此之外我也尝试过你的方法,但它给了我未定义的变量错误
  • 理想情况下,@Mayank 提供的上述解决方案应该可以工作。
猜你喜欢
  • 2015-12-11
  • 2012-12-15
  • 1970-01-01
  • 2012-03-02
  • 2011-03-06
  • 1970-01-01
  • 1970-01-01
  • 2018-10-23
  • 2013-09-01
相关资源
最近更新 更多