CI中的ajax jquery分页错误

Posted

技术标签:

【中文标题】CI中的ajax jquery分页错误【英文标题】:Error in ajax jquery pagination in CI 【发布时间】:2013-12-29 08:23:27 【问题描述】:

codeigniter 中的 jquery 分页出错。

    if per_page=5;
    total number 6 and total page 2

    but the pagination like below

    Showing 6 to 6 of 6 |  < 1 2
    But only 5 is shown and last one show in 2nd page.

嗨朋友们,我陷入了这个错误。这个节目在每一页都显示。请给我一个解决方案来获得正确的分页

以下代码正在使用:

            $config['base_url'] = site_url('settings/view_leave_reason_ajax/');
        $config['total_rows'] = $this->leav->getLvReasonCount();
        $config['per_page'] = 5;        
        $config['anchor_class'] = 'ajax_links';
        $config['show_count'] = true;
        $config['div'] = '#list_view';
        $this->jquery_pagination->initialize($config);
        $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
        $data["links"] = $this->jquery_pagination->create_links();
        $data['page'] = $page;
        $data['result'] = $this->leav->getLvReason($config["per_page"], $page);

关于以下ci分页的问题:

https://github.com/neotohin/CodeIgniter-Ajax-pagination-Library

查看页面:

<?php if($result=="")
                ?>
                <tr style="height: 50px; background:#ffffff; font-weight: bold;">
                    <td colspan="5" style="width:50px;">
                        No Details Exist
                    </td>
                </tr>
                <?php
                
                if($result!="")
                
                $c = $page+1;
                $col1[1]="";
                $col1[2]="#d6e3f6";
                $col=$col1[2];
                    foreach ($result as $row)
                    
                        $did = $row['id'];
                ?>
                <tr style="height: 50px;background:<?php echo $col;?>;">
                    <td><input type="checkbox" name="c1[]"  value="<?php echo $did;?>" /></td>
                    <td><?php echo $c;?></td>
                    <td><?php echo $row['department_name'];?></td>
                    <td>

                            <a class="fancybox fancybox.iframe" href="<?php echo site_url()."/settings/department_edit/".$this->hrm->encData($row['id']); ?>" ><img class="aicon" src="<?php echo base_url().'/assets/images/edit.png';?>"  title="edit" style="margin-top:4px; margin-left:3px;"></a>
                    </td>   
                </tr>
                <?php  $c=$c+1;
                if($col == $col1[1])    $col = $col1[2];
                else $col = $col1[1];
                    

                ?>
                <tr style="height: 50px; background:#ffffff; font-weight: bold;">
                    <td colspan="5" style="width:50px;">
                        <input type="button" value="Delete" class="btn_black" onclick="return chkdel()">
                    </td>
                </tr>
                <?php ?>

                <tr  style="height: 50px;"><td colspan="4" style="text-align: right; padding-right:10px;"><?php echo $links; ?></td></tr>

【问题讨论】:

检查这个:***.com/questions/11384835/… 这是一个关于 ci 分页的错误:github.com/neotohin/CodeIgniter-Ajax-pagination-Library 也被报告为那里的问题.... 尝试在config中设置合适的uri_segment,默认的uri段是3 你能给我“视图”文件吗? @fawwaz 查看页面现在有问题 【参考方案1】:

你已经定义了

 $config['div'] = '#list_view';

在您的配置中,但您尚未在视图中定义该容器。因此不会发送 ajax 调用。

所以不是这个

<tr  style="height: 50px;"><td colspan="4" style="text-align: right; padding-right:10px;"><?php echo $links; ?></td></tr>

尝试将容器&lt;div id="list_view"&gt;&lt;?php echo $links; ?&gt;&lt;/div&gt;如下:

<tr  style="height: 50px;"><td colspan="4" style="text-align: right; padding-right:10px;"><div id="list_view"><?php echo $links; ?></div></td></tr>

也在分页库Jquery_pagination.php

line number 184的这一行从

if( ( $curr_offset + $this->per_page ) < ( $this->total_rows -1 ) )

if( ( $curr_offset + $this->per_page ) <= ( $this->total_rows -1 ) )

它会工作的......

【讨论】:

我在您的问题中找不到模型函数getLvReason 的代码 您好,已找到该错误。请检查答案 不需要用 进行更改。jquery_pagination 中的更改工作正常 我没有看到任何容器,这就是为什么发布它。

以上是关于CI中的ajax jquery分页错误的主要内容,如果未能解决你的问题,请参考以下文章

DataTables jQuery插件服务器端处理,通过ajax删除后智能分页

jQuery 分页插件(jQuery.pagination.js)ajax 实现分页

jquery datables ajax分页后的点击事件无效是怎么回事

jquery+Struts2实现ajax局部刷新分页

使用 Jquery、PHP、Mysql 进行 Ajax 分页 [关闭]

ajax 分页(jquery分页插件pagination) 小例3