Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何更改asp.net页面服务器端的标记(从.cs文件)_C#_Asp.net - Fatal编程技术网

C# 如何更改asp.net页面服务器端的标记(从.cs文件)

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"/> <

提前谢谢

我们需要包括或排除IE条件语句(位于页面的标题中),这取决于方法(来自代码隐藏)是否返回true或false。该方法是在代码隐藏中编写的,因此如果
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;