我有这个HTML代码:
<div>
<time class="departure"><span></span>value1<time class="return">
<span></span>value2</time>
</div>
我使用下面的c#代码:
var nodes = doc.DocumentNode.SelectNodes("//time[@class='departure']");
foreach (var node in nodes)
{
Console.WriteLine(node.InnerHtml);
if (node.InnerText.Trim() == DepartTime)
{
ReturnTime = node.SelectSingleNode("time").InnerText; //null reference here
}
}
因此,您可以看到我检查离开时间(DepartTime)是否存在,然后它将返回之后第一个时间元素的下一个非文本值。但这似乎没有工作,我得到异常空引用。
答案 0 :(得分:0)
通过
解决了 foreach (var node in nodes)
{
if (node.InnerText.Trim() == DepartTime)
{
ReturnTime = node.ParentNode.SelectNodes("time")[1].InnerText.Trim();
}
}