整容说文库 > 程序代码 > 教育资讯

Ext的Coolite分页问题

来源:学生作业帮助网 编辑:整容说文库 时间:2020/07/16 08:43:47 程序代码
Ext的Coolite分页问题程序代码
HapCn 于 2009-06-24 16:00:49 编辑 最近用Coolite封装的Ext做后台,遇到一个很郁闷的问题:用PagingToolBar控件分页的时候,点击【下一页】按钮,本来应该是从第【1】页跳到第【2】页的,但是却转到第【11】页,继续点击便是【111】【1111】【11111】...
其它的【第一页】、【前一页】【最后一页】按钮都正常,而且在点击过这些正常的按钮或者回车跳到指定页后,【下一页】这个原本不正常的按钮也变正常了,不知何解,我把代码贴出来,请大家帮分析一下。


        <%--Store--%>
        <ext:Store runat="server" ID="NewHouseStore">
            <SortInfo Field="id" Direction="ASC" />
            <Proxy>
                <ext:HttpProxy Url="../Data/GetNewHouseList.aspx" Method="POST">
                </ext:HttpProxy>
            </Proxy>
            <Reader>
                <ext:JsonReader ReaderID="id" Root="data" TotalProperty="totalCount">
                    <Fields>
                        <ext:RecordField Name="id" Type="Int" />
                        <ext:RecordField Name="areaname" Type="String" /> 
                    </Fields>
                </ext:JsonReader>
            </Reader>
            <BaseParams>
                <ext:Parameter Name="start" Value="0" />
                <ext:Parameter Name="limit" Value="5" />
            </BaseParams>
        </ext:Store>
        <%--Grid--%>
        <ext:GridPanel
            ID="NewHouseInfogrid"
            runat="server"
            Collapsible="true"
            Width="1024" 
            Height="300" 
            Title="新房信息列表" 
            Frame="true" 
            TrackMouseOver="true"
            StoreID="NewHouseStore">
            <ColumnModel ID="ColumnModel1" runat="server">
                <Columns>
                    <ext:Column Header="id" Width="50"  DataIndex="id" />
                    <ext:Column Header="区域" DataIndex="areaname" Width="50" Sortable="true" Groupable="true"/>
                </Columns>
            </ColumnModel>
            <LoadMask ShowMask="true" />                  
            <BottomBar>
                <ext:PagingToolBar
                    ID="NewHousePagingToolBar"
                    runat="server"
                    PageSize="5"
                    StoreID="NewHouseStore"
                    DisplayInfo="true"
                    DisplayMsg="当前记录 {0} -- {1} 条 共 {2} 条记录"
                    EmptyMsg="没有新房的信息"
                    >
                 </ext:PagingToolBar>
            </BottomBar> 
        </ext:GridPanel> 


找了很多资料后,终于找到问题所在:这是ext的小bug(但是EXT团队不这样认为),这个问题不但在Coolite中才有,Extjs3.0也有。
解决办法:
在Extjs中PagingToolbar.js(或者在ext-all.js)中找到以下代码:
this.cursor=o.params?o.params[this.paramNames.start]:0;

更改成:
this.cursor=o.params?parseInt(o.params[this.paramNames.start]):0;

即可。
如果你用的是Coolite的话,你需要下载一个Coolite的源码,打开Coolite解决方案下面的Coolite.Ext.Web项目,找到Coolite.Ext.Web\Build\Resources\Coolite\extjs\ext-all.js文件,按照上面的方法更改代码,再编译之后把生成的dll替换到您的网站bin目录即可。
Coolite.Ext.Web.dll往往需要相应版本的Coolite.Utilities.dll,如果程序运行不通过并提示没有找到XXX版本的Coolite.Utilities.dll,同样,编译Coolite.Ext.Utilities项目并替换dll到您的网站即可。
参考资料:http://http://extjs.com/forum/showthread.php?t=65637

真高兴,来人接分啊。。。。。。
LZ解决了??

 恭喜哦。。。
不行啊,
楼主
试过之后啥都完了
哎。
楼主你很强大
该回复于2010-12-10 14:42:05被版主删除
程序代码