我有div
控件在服务器上运行
<div id="report" runat="server" ></div>
我在运行时使用div
向上述jquery
添加了一些内容。现在我想访问上面div的innerHtml。
示例:
<div id="report" runat="server" >
<div class="someclass">some Text1</div>
<div class="someclass">some Text2</div>
<div class="someclass">some Text3</div>
</div>
预期输出是(以字符串格式表示HTML):
<div class="someclass">some Text1</div>
<div class="someclass">some Text2</div>
<div class="someclass">some Text3</div>
到目前为止,我尝试了以下两种方法,但没有运气
ContentPlaceHolder myContent = (ContentPlaceHolder)this.Master.FindControl("contentPlaceHolder");
Control cc= myContent.FindControl("report");
和
string HTMLString=report.InnerHtml;
答案 0 :(得分:1)
将表单元素内的输入元素表单发布到服务器。
所有其他内容都是静态的,不会发布到服务器。
这是HTTP的基本规则,您可以看到详细信息from here
所以你无法得到report.InnerHtml
。
您有两个选项,在准备div的内容时,在隐藏字段中写入相同的内容。在服务器端获取隐藏字段的值。
<input type="hidden" id="hdnDivContents" runat="server">
并使用jquery或javascript设置值。
$('#<% hdnDivContents.ClientID %>').val($("#<% report.ClientID %>").val());
并获取代码中的值
string HTMLString=hdnDivContents.Value;
或者在准备内容时进行AJAX调用以便在服务器端获取它。