如何动态地在asp div中获取innerHTML

时间:2014-10-28 04:29:09

标签: c# html asp.net

我有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;

1 个答案:

答案 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调用以便在服务器端获取它。