首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 產生後台腳本的問題解決辦法

     編輯:關於ASP.NET

Response.Write vs RegisterStartupScript:彈出視窗時機差異

問題現象

Response.Write("<script>alert('彈出視窗!');</script>");

執行時頁面空白、進度條緩慢,點確定後才顯示內容。原因:Response.Write 直接輸出至回應流,**阻塞瀏覽器渲染**,腳本執行時頁面尚未載入完成。

正確做法:RegisterStartupScript

Page.RegisterStartupScript("", "<script>alert('彈出視窗!');</script>");

RegisterStartupScript 將腳本註冊於頁面 **onload 事件前**,瀏覽器已完成 DOM 建構,彈出視窗不影響頁面顯示。

補充:.NET 2.0+ 建議使用 ClientScriptManager

ClientScript.RegisterStartupScript(this.GetType(), "alert", "alert('彈出視窗!');", true);

第四參數 true 自動包裹 <script> 標籤,更安全便利。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved