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


    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,                          

         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次加载。 

  • 相关阅读:
    【20211012】以确定去适应不确定
    【20211011】工作之余
    【20211009】二孩的心思
    【20211010】幸福声响
    【20211007】连岳摘抄
    【读书笔记】《创新与企业家精神》
    【20211006】连岳摘抄
    【20211008】生活规律,事情也好解决
    ASP.NET中DataGrid的简单用法
    无限级分类的实现
  • 原文地址:https://www.cnblogs.com/zc22/p/1876731.html
Copyright © 2020-2023  润新知