1

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

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

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

索引.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>";
4

1 回答 1

0

正如蒂姆建议的那样,pageSize从分页工具栏中删除参数,然后将其添加到您的store

var store = new Ext.data.Store({
    pagesize: 5,
    proxy: new Ext.data.HttpProxy({
        method:'GET',
        url:'./grid2.php'
    })
}) ...
于 2013-03-29T03:33:22.243 回答