ASP頁面輸出提示框的區別

來源:互聯網
上載者:User

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>之前。

補充例子:
....
</HEAD>
<body MS_POSITIONING="GridLayout">
<form name="Form1" method="post" action="WebForm6.aspx" id="Form1">
           <input type="hidden" name="__VIEWSTATE" value="dDw3MzU1MTQ5MzY7Oz6nugrEg+5T6RC7MTIuLoIrMLQLPw==" />
<script>function block(){}</script>    ------------>RegisterClientScriptBlock()方法輸出的在這裡

<input name="TextBox1" type="text" id="TextBox1" style="Z-INDEX: 101; LEFT: 296px; POSITION: absolute; TOP: 120px" />

            <script>function startup(){}</script> ------------>RegisterStartupScript()方法輸出的在這裡

</form>
</body>
</HTML>

聯繫我們

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