asp.net註冊頁面指令碼

來源:互聯網
上載者:User

    在Page類裡有幾個方法:
    RegisterClientScriptBlock      可以向頁面中發送用戶端代碼塊(當然可以不僅僅是指令碼,也可以是其它的文本),這段代碼會被寫到Form裡的開始部分
    IsClientScriptBlockRegistered   根據一個頁面級的Key來判斷某段由RegisterClientScriptBlock發送的用戶端代碼是否已被發送到了用戶端。
    RegisterStartupScript    可以向頁面中發送用戶端代碼塊,這段代碼會被寫到Form裡的結束部分。這樣就可以如其名稱一樣,在頁面載入完成後寫入一段自動啟動並執行代碼
    IsStartupScriptRegistered  根據一個頁面級的Key來判斷某段由RegisterStartupScript發送的用戶端代碼是否已被發送到了用戶端

    RegisterClientScriptBlock在 Page 對象的 元素的開始標記後立即發出用戶端指令碼
    RegisterStartupScript則是在Page 對象的 元素的結束標記之前發出該指令碼

    通過上面的幾個方法就可以解決上述的兩個問題。

   樣本:

        //產生用戶端指令碼

        private string GetClientScript()

        {

            return @"<script language=""javascript"">

                        function ClientFunction()

                        {

                            具體的實現

                        }

                    </script>";

        }

 

        //產生自動啟動並執行用戶端指令碼

        private string GetClientStartUpScript()

        {

            return @"<script language=""javascript"">

                            具體的實現

                    </script>";

        }

 

        //在預呈現事件裡加入用戶端指令碼

        protected override void OnPreRender(EventArgs e)

        {

            if(!Page.IsClientScriptBlockRegistered("ClientScriptKey1"))

                Page.RegisterClientScriptBlock("ClientScriptKey1",GetClientScript());

            Page.RegisterStartupScript("ClientScriptKey2",GetClientStartUpScript());

            base.OnPreRender(e);

        }

     向頁面註冊用戶端指令碼要在預呈現裡完成,如果在Redner裡來做則不會啟作用。
     在寫大段的用戶端指令碼時,可以在文本前加入@,這樣,引起來的字元器的換碼序列將“不”被處理,這樣就可以輕鬆寫出字串。如果要在字元器裡包括一個雙引號,請使用兩對雙引號。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.