现在的位置: 首页 > 综合 > 正文

ASP.NET一个页面请求被重复处理多次的原因记录。

2012年09月24日 ⁄ 综合 ⁄ 共 3319字 ⁄ 字号 评论关闭

1. 使用default.aspx,不标记任何的entity。

一切正常,仅仅被处理了一次。

 

2. 使用Default.aspx,使用权限标记 

[Pixysoft.Framework.Security.Entity.AuthenticationPage("MANAGER_LEVEL_00")]

正常。

说明了不是securityModule的问题,权限一块没有什么问题。

 

3. 页面继承了JsonPage<ManagerQueryPosSalesReceiptHandler>

一切正常,不是json框架问题。

 

4.  添加了css/js引用。

    <link rel="Stylesheet" type="text/css" href="css/ext-all.css" />

    <script type="text/javascript" src="js/ext-base.js"> </script>

    <script type="text/javascript" src="js/ext-all.js"> </script>

    <script type="text/javascript" src="js/ext-helper.js"> </script>

    <script type="text/javascript" src="js/pixysoft.pageflow.ext.js"> </script>

    <script src="js/console/manager/querypos/manager_querypos_possalesreceipt.js"

        type="text/javascript"></script> 

一切正常。

 

5. 添加了Extjs初始化

一切正常。

 

6. 添加了extjs事件

出现了多层引用!!!!!

 

问题在: Ext.getCmp(Page.manager_querypos_possalesreceipt()).render(Ext.getBody());

 

这里对请求调用了很多次。就是在render的问题。

 

7. 使用了extjs原生态:

http://xiaofen3115.javaeye.com/blog/209640

没有问题。render正常,仅仅访问了一次。

     <script type="text/javascript">

        Ext.onReady(function ()

        {

 var form = new Ext.form.FormPanel({

    defaultType: 'textfield',

    labelAlign: 'right',

title: 'form',

labelWidth: 50,  

    frame: true,                          

    width: 220,                           

    items: [{                             

        fieldLabel: '文本框'             

    }],                                    

    buttons: [{                          

        text: '按钮'                       

    }]                                      

});

form.render(Ext.getBody()); 

        });  

    </script>

 

 

8.  没有grid的声明,render。

出现了 4条访问记录。

 

9. 出现了grid的声明,render

出现了11条访问记录。

 

10. 删除了pageflow的引用

<script type="text/javascript" src="js/pixysoft.pageflow.ext.js"> </script>

出现了11条访问记录。

 

11. 仅仅声明一次初始化界面,render

        Ext.onReady(function ()

        {

            var panel = ExtHelper.CreateFormPanel(Page.manager_querypos_possalesreceipt(), '销售查询', 700, 80);

            panel.add(

            ExtHelper.CreateColumnLayout(

                ExtHelper.CreateLayoutCombobox(0.8, Page.comboBox_shoplist(), '门店列表', 425, 'SHOPCODE', 'SHOPNAME'),

                ExtHelper.CreateHiddenfield(Page.hidden_shopcode())

            ));

        });

出现了2次调用。

 

12. 仅仅声明了panel

        Ext.onReady(function ()

        {

            var panel = ExtHelper.CreateFormPanel(Page.manager_querypos_possalesreceipt(), '销售查询', 700, 80); 

        }); 

 仅仅出现了1次调用。

 

13. 声明了panel+hiddenfield

仅仅出现了1次调用

 

14.             var panel = ExtHelper.CreateFormPanel(Page.manager_querypos_possalesreceipt(), '销售查询', 700, 80);

            panel.add(

            ExtHelper.CreateColumnLayout(

                ExtHelper.CreateLayoutEmpty(0.4),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchtoday(), '本日销售', 100),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchyesterday(), '昨日销售', 100),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchweek(), '本周销售', 100)

            )); 

出现1次。

 

15.             panel.add(

            ExtHelper.CreateColumnLayout(

                ExtHelper.CreateLayoutDatefield(0.4, Page.dateTimePicker_datefrom(), '开始时间', 150),

                ExtHelper.CreateLayoutDatefield(0.4, Page.dateTimePicker_dateto(), '结束时间', 150),

                ExtHelper.CreateLayoutButton(0.2, Page.button_search(), '查询销售', 100)

            ));

            panel.add(

            ExtHelper.CreateColumnLayout(

                ExtHelper.CreateLayoutEmpty(0.4),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchtoday(), '本日销售', 100),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchyesterday(), '昨日销售', 100),

                ExtHelper.CreateLayoutButton(0.2, Page.button_searchweek(), '本周销售', 100)

            )); 

出现3次。

 

 

 

CreateLayoutDatefield 会产生一次请求。

 

继承了triggerdatefield都会产生2次加载。 

抱歉!评论已关闭.