繁体   English   中英

从服务器端查找没有runat ='server'的控件

[英]find a control with no runat='server' from server side

我的代码:

<div id="conversationdiv" runat="server">
 <table border="1" id="table_id">
  <tr>
   <td>blah blah</td>
    </tr>
   </table>
</div>
<asp:button id='clickMe' runat='server' onClick="Click_me" Text="appendRow"></asp:Button>

服务器端:

protected void Click_me(object sender,EventArgs e){
  HtmlTable table = (HtmlTable)ConversationDIv.FindControl("table_id");
 }

HtmlTable表返回null,我知道这是因为该表没有runat='server'属性,但是我的问题是,即使没有添加此类属性,我仍然可以找到该表吗?

您可以执行conversationdiv.InnerHtml ...在这种特定情况下,它将返回表的HTML

然后,您可以使用HTML Agility Pack查询或操作所述表。


var html = new HtmlAgilityPack.HtmlDocument();

html.LoadHtml(conversationdiv.InnerHtml);

var table = html.DocumentNode.SelectNodes("table").FirstOrDefault();

var tr = table.SelectNodes("tr").FirstOrDefault();

var td = tr.SelectNodes("td").FirstOrDefault();

var blahBlah = td.InnerText;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM