[英]Inline C# in <noscript> tags
我需要在ASP.NET中使用該標記,以便從類背后的代碼中調用C#方法,但是無論是否啟用JavaScript,它似乎都在調用它。 標簽內的其他文本可以正常工作。
以下是我正在使用的代碼,我在做錯什么嗎?
謝謝
<noscript>
other text here
<% DisableTextBox("textBoxId"); %>
</noscript>
解決方案 TextBox在服務器端被禁用,並使用以下JavaScript / jQuery啟用了客戶端:
$("#txtTotalQuantScore").prop("disabled", false);
ASP.NET視圖引擎對您包含的noscript
標記一無所知。
服務器將執行所有服務器端代碼,並將結果寫入HTML頁面。 noscript
標記不能用作C#if語句。
如果您想在Javascript不可用時禁用某些功能,可以在客戶端進行。
一種方法是將有問題的元素設置為隱藏在CSS中,然后使用Javascript取消隱藏它。
正如@Jamie Dixon所描述的,您試圖做的事情是不可能的。
查看您的方法名稱,如果瀏覽器不支持javascript,您似乎正在嘗試禁用文本框。
因此,我建議始終在服務器端禁用此文本框,並在客戶端使用javascript啟用它。
這樣,只有支持javascript的瀏覽器才會啟用文本框。
我要補充一下,您可以檢測到服務器端瀏覽器支持腳本,但是沒有簡單的方法來判斷用戶是否已啟用腳本。
您可以采取一些技巧,例如通過腳本在隱藏字段中設置值(例如0表示沒有腳本編寫,1表示啟用),但這並不總是可靠的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.