Extjs分页错误

Posted

技术标签:

【中文标题】Extjs分页错误【英文标题】:Extjs paging error 【发布时间】:2013-03-23 10:19:18 【问题描述】:

使用 ExtJs,我正在测试将接收到的 xml 数据传输到特定网格。 我制作了一个包含 10 个输出值的简单文本文件,并从分页工具栏将 pageSize 设置为 5。

也就是说,10 个值的期望输出可能是每页(2 页)上的 5 个值。 它正确分为 2 页,但每页有 10 个相同的值。

出现上述问题的原因是什么? 我希望您的 cmets 将成为可能的解决方案。 谢谢!

index.php

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<link rel="stylesheet" type="text/css" href="resources/css/ext-all.css" />
<script src="resources/js/ext-base.js"></script>
<script src="resources/js/ext-all-debug.js"></script>
<script src="resources/ux/BufferView.js"></script>
<script type="text/javascript">

    Ext.onReady(function() 
         var mm = Ext.data.Record.create([  
          name: 'mb_id',
          name: 'mb_sex',
          name: 'mb_name'
         ]);


         var store = new Ext.data.Store(
          proxy: new Ext.data.HttpProxy(
           method:'GET',
           url:'./grid2.php'
          ),  

          reader: new Ext.data.XmlReader(
                
                    record: 'Item'  
                    ,  [
                            'mb_id'
                            ,'mb_sex'
                            ,'mb_name'
                         ]  
                    ),
                    autoLoad: params:start: 0, limit: 5

         );


         var grid = new Ext.grid.GridPanel( 
            renderTo: document.body, 
            frame:true, 
            title: 'information', 
            height:300, 
            width:516, 
            store: store, 
            columns: [ 
                header: "id", dataIndex: 'mb_id',//, renderer: cover_image
                header: "sex", dataIndex: 'mb_sex',width:100,
                header: "name", dataIndex: 'mb_name',width:100
            ],
            bbar:new Ext.PagingToolbar(
            store:store,
            pageSize:5,
            displayInfo:true
            )
        ); 
    ); 


</script>
</HEAD>
<BODY>
</BODY>
</HTML>

数据.php

    header("Content-type: application/xml");    //;charset=utf-8
    echo "<?xml version=\"1.0\" encoding=\"UTF-8\" ?>";

    echo "<root>";

    //전체 데이터 레코드 값 기록
    for($i=0;$i<10;$i++)
    

            echo "<Record>";
            echo "<Time>".$i."</Time>";
            echo "<Name>".$i."</Name>";
            echo "</Record>";
    
    echo "</root>";

【问题讨论】:

分页在商店和工具栏中控制。它不是网格对象中的配置。 【参考方案1】:

按照 Tim 的建议,从您的分页工具栏中删除 pageSize 参数,然后将其添加到您的 store

var store = new Ext.data.Store(
    pagesize: 5,
    proxy: new Ext.data.HttpProxy(
        method:'GET',
        url:'./grid2.php'
    )
) ...

【讨论】:

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

EXTJS 4 网格与分页不起作用---存储代理问题

ExtJs 5 动态网格分页

EXTJS 4.2 网格问题的分页

Grails extJS 网格分页

如何在 ExtJS 中动态更改分页网址?

ExtJS 4.1 中的分页问题