Dot-Net
如何在頁面載入之前執行 Javascript 函式?
我正在使用隱藏欄位“Isjsenabled”來檢測客戶端的 Javascript 是啟用還是禁用。如果啟用 Javascript,將觸發 Javascript 函式並將隱藏欄位的值設置為 1。
我想檢查伺服器端 Page_load 的隱藏值。但問題是 Javascript 在頁面載入後被觸發。
你有什麼建議嗎?
網頁部分
<script type="text/javascript"> $(function() { $("#<%= Isjsenabled.ClientID %>").val(1); }); </script> <input id="Isjsenabled" runat="server" value ="0" type="hidden" />部分程式碼
protected void Page_Load(object sender, EventArgs e) { HtmlInputHidden hdn = this.FindControl("Isjsenabled") as HtmlInputHidden; if (hdn != null) if (hdn.Value != null && hdn.Value == "0") Helper.SetCookie("IJE", "0"); else Helper.SetCookie("IJE", "1"); }
無需過多考慮您嘗試進入的方向,所有瀏覽器都支持一個小標籤,稱為 NOSCRIPT。
<noscript> <img src="http://myserver/notify_no_script.aspx" style="display:none"> </noscript>如您所見,這個想法是讓瀏覽器請求圖像,但前提是禁用 javascript。該頁面可以設置一個會話變數,說明目前客戶端沒有可用於目前會話中所有程式碼的腳本功能。
或者,您可以遵循目前的方法:
<noscript> <input type="hidden" name="noscript" value="1"> </noscript> <script><!-- document.writeline('<input type="hidden" name="noscript" value="0">'); //--></script>希望這可以幫助,
-Oisin