程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> RegisterStartupScript和RegisterClientScriptBlock輸出位置的區別

RegisterStartupScript和RegisterClientScriptBlock輸出位置的區別

編輯:.NET實例教程

Page.Response.Write("<script>var response;</script>");    

Page.RegisterStartupScript("RegisterStartupScript","<script>var RegisterStartupScript;</script>");    

Page.RegisterClientScriptBlock("RegisterClientScriptBlock","<script>var RegisterClIEntScriptBlock;</script>");   

Response.Write輸出後的位置在源文件的第一行.

RegisterClIEntScriptBlock輸出後的位置會在<form>的下一行.(在ASP.Net自帶的腳本和一些隱藏域之下).

RegisterStartupScript輸出後的位置會在</form>的上一行.

RegisterClIEntScriptBlock的原型與RegisterStartupScript相同,兩個函數不同在於將其包含的腳本代碼寫入到Html文件的不同位置.RegisterClientScriptBlock在 Page 對象的 元素的開始標記後立即發出客戶端腳本,RegisterStartupScript則是在Page 對象的 元素的結束標記之前發出該腳本。如果你的腳本有與頁面對象(doucument對象)進行交互的語句,則推薦使用RegisterStartupScript,反之如果要想客戶端腳本盡可能早的執行,則可以使用RegisterClIEntScriptBlock或Response.Write。

RegisterClientScriptBlock一般返回的是客戶端函數的包裝,而RegisterStartupScript返回得函數在document裝載完成後會執行,類似於我們平時所說的body onload="f()"裡面的函數;這兩個方法在客戶端呈現的代碼位置不同,RegisterClIEntScriptBlock在<form runat=server>之後,而RegisterStartupScript在</form>之前。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved