有没有人在ASP.Net webforms页面中打开BODY标记之后有任何注入HTML片段的示例?这段代码的定位非常具体。
最初的HTML可能如下所示:
</head>
<body>
<div id="header">
生成的HTML应如下所示:
</head>
<body>
<div id="new-div"></div>
<div id="header">
这是一种无法直接操作HTML的场景,而javascript会为了使附加HTML变得有用而为时太晚。必须使用服务器端代码完成,然后才能将HTML转到Web浏览器。
答案 0 :(得分:1)
你可以在你的aspx标记中这样做:
<html>
<head>
</head>
<body>
<%= FunctionTheOutputsString() %>
<%=
是Response.Write()
的缩写,{{1}}是一个直接写入页面的函数。
答案 1 :(得分:0)
使用jQuery,您可以使用prepend()
:
$(function(){
$('body').prepend('<div id="new-div">Div content</div>');
});
更新:服务器端解决方案也可以(除了上面的回答):
<html>
<head>
</head>
<body>
<asp:placeholder id="divPlaceHolder" Visible="False" runat="server">
<div id="new-div">
</div>
</asp:placeHolder>
在Page_Load()...
上 if(SomeCondition)
divPlaceHolder.Visible=true;
由于不可见元素未呈现,new-div
元素仅在SomeCondition
为真时显示