2010-12-23 22 views

回答

6

ClientScript.RegisterStartupScript()是用於使在腳本,其在啓動時自動運行的塊。

ClientScript.RegisterClientScriptBlock()僅用於註冊一般方法。

我覺得技術上的區別在於啓動腳本放在</body>之前,這樣它在頁面加載後儘快執行?

更新

我已經加倍檢查了這一點,這是我所說的。

http://msdn.microsoft.com/en-us/library/asz8zsxy.aspxClientScript.RegisterStartupScript()「由RegisterStartupScript方法添加的腳本塊在頁面完成加載後但在頁面的OnLoad事件引發之前執行」。

http://msdn.microsoft.com/en-us/library/btf44dc9.aspxClientScript.RegisterClientScriptBlock()「RegisterClientScriptBlock方法將一個腳本塊添加到呈現的頁面的頂部。」

+0

確認測試`ClientScript.RegisterClientScriptBlock(this.GetType(), 「SCRIPT2」,TEST2)`在視圖狀態後頂部加入。和`ClientScript.RegisterStartupScript(this.GetType(),「script1」,test1);`被添加在底部。 – zulucoda 2012-01-26 14:23:08

1

ClientScript.RegisterStartupScript將腳本放置在關閉</body>標記之前,而ClientScript.RegisterClientScriptBlock將它放置在視圖狀態隱藏字段後面的開始位置。

0

MSDN:

用的RegisterStartupScript方法添加的腳本塊在頁面加載完成,但之前提高了頁面的onload事件中執行。

RegisterClientScriptBlock方法將一個腳本塊添加到呈現的頁面的頂部。

相關問題