BAS*_*BAS 1 html javascript c# asp.net noscript
我需要在ASP.NET中使用标记,以便从类后面的代码中调用C#方法,但无论是启用还是禁用JavaScript,它似乎都在调用它.标签内的其他文本按预期工作.
下面是我正在使用的代码,有什么我做错了吗?
谢谢
<noscript>
other text here
<% DisableTextBox("textBoxId"); %>
</noscript>
Run Code Online (Sandbox Code Playgroud)
解决方案 TextBox在服务器端被禁用,并使用以下JavaScript/jQuery启用了客户端:
$("#txtTotalQuantScore").prop("disabled", false);
Run Code Online (Sandbox Code Playgroud)
ASP.NET视图引擎对noscript您包含的标记一无所知.
服务器将执行所有服务器端代码,并将结果写入HTML页面.该noscript标签不能被用来作为一个C#的if语句.
如果您想在Javascript不可用时禁用某些内容,则可以在客户端执行此操作.
一种方法是将有问题的元素设置为隐藏在CSS中,然后使用Javascript取消隐藏它.
正如@Jamie Dixon所描述的那样,你想做的事情是不可能的.
查看您的方法名称,如果浏览器不支持javascript,则表示您正在尝试禁用文本框.
因此,我建议始终在服务器端禁用此文本框,并在客户端使用javascript启用它.
这样,只有支持javascript的浏览器才会启用文本框.