ASP.NET一個頁面請求被重複處理多次的原因記錄。

來源:互聯網
上載者:User

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次載入。 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.