C# 如何更改asp.net页面服务器端的标记(从.cs文件)
提前谢谢 我们需要包括或排除IE条件语句(位于页面的标题中),这取决于方法(来自代码隐藏)是否返回true或false。该方法是在代码隐藏中编写的,因此如果C# 如何更改asp.net页面服务器端的标记(从.cs文件),c#,asp.net,C#,Asp.net,提前谢谢 我们需要包括或排除IE条件语句(位于页面的标题中),这取决于方法(来自代码隐藏)是否返回true或false。该方法是在代码隐藏中编写的,因此如果IfBrowserIsMobile()返回true,则不应存在与IE条件语句相关的标记。 我们如何做到这一点? (标题中)的标记如下: <!--[if lt IE 9]> <link rel="stylesheet" href="/css/lt-ie9.css" media="screen"/> <
IfBrowserIsMobile()
返回true,则不应存在与IE条件语句相关的标记。
我们如何做到这一点?
(标题中)的标记如下:
<!--[if lt IE 9]>
<link rel="stylesheet" href="/css/lt-ie9.css" media="screen"/>
<![endif]-->
在aspx页面的head部分包含一个
literal
控件,然后在code behind中,您可以将此控件的Text
属性设置为任何您喜欢的属性。此文本可以是html或非html文本。您可以在head部分中拥有您认为满足您的需求所必需的任意数量的此类控件
<asp:Literal ID="Literal1" runat="server"></asp:Literal>
将其包装在本身不发出任何标记的元素中,例如
占位符
:
<asp:PlaceHolder runat="server" ID="ieLogic">
<!-- your client-side markup here -->
</asp:PlaceHolder>
通常,您不会从服务器端代码更改标记,但可以有条件地显示/隐藏标记的不同部分。Thank@sunil。这对scetion也适用吗?我们需要做同样的事情-如果方法返回true或false,则包含单独的.js文件。是的,您可以在页面中的任何位置包含此文件。但请记住,您需要将其文本设置为有效值。例如,如果要将打开和关闭
script
标记设置为某些JavaScript,则可能需要包含打开和关闭标记,如果是html,则需要使用正确的html标记。您好@David。我一直在使用上面的答案,只是想知道我们是否可以有多个placeholders@NitinKumarMishra:当然可以。您可以在页面上放置任意数量的控件。
Literal1.Text = @"<script type='text/javascript'>alert('hello sir');</script>";
<asp:PlaceHolder runat="server" ID="ieLogic">
<!-- your client-side markup here -->
</asp:PlaceHolder>
if (IfBrowserIsMobile())
isLogic.Visible = false;