我的网页上有这个代码:
<div class="goog-inline-block goog-flat-menu-button-caption">
TestText
</div>
我想知道如何使用C#访问此类并将TestText
更改为其他字符串。
我正在尝试HtmlCollection
,但没有InnerText选项。
编辑:我无法更改上面的代码。
答案 0 :(得分:1)
假设您正在使用ASP.NET
并且您的div位于至少一个具有runat =“server”属性的容器中,即Form
<form id="form1" runat="server">
<div class="goog-inline-block goog-flat-menu-button-caption">
TestText
</div>
</form>
你可以这样做:
var xml = form1.InnerHtml;
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
var nodes = doc.SelectSingleNode("//div[contains(@class,'goog-inline-block goog')]");
foreach(XmlNode node in nodes)
{
node.InnerText = " changed Text";
}
form1.InnerHtml = xml = doc.InnerXml;
使用 Linq to SQL ,即 XDocument
XDocument doc = XDocument.Parse(xml);
var nodes = doc.Elements("div")
.Where(s => s.Attribute("class").Value
.Contains("goog-inline-block goog")
)
.ToList();
foreach (XElement elem in nodes)
{
elem.Value = "changed text";
}
form1.InnerHtml = doc.ToString();
答案 1 :(得分:0)
添加 runat =“server”和 id 属性,以便您拥有:
<div id="mydiv" class="goog-inline-block goog-flat-menu-button-caption" runat="server" >
TestText
</div>
您可以使用:
来使用class属性mydiv.Attributes [“class”] =“classOfYourChoice”;
或
mydiv.InnerText =“您选择的文字”;
希望您理解并帮助您..
答案 2 :(得分:0)
在C#中,您需要提供id并在div标签中设置runat =“server”,如下所示。
<div id="divTest" runat="server" class="goog-inline-block goog-flat-menu-button-caption">
TestText
</div>
然后 在C#Code背后
divText.InnerText = "Change Text From Here.";
试试这个,如果不行,请详细解释我的问题。