Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# HtmlAlityPack无效标记_C#_Html_Html Agility Pack - Fatal编程技术网

C# HtmlAlityPack无效标记

C# HtmlAlityPack无效标记,c#,html,html-agility-pack,C#,Html,Html Agility Pack,我正在使用codeplex中的HtmlAgilityPack。 当我将一个简单的html字符串传递给它,然后返回结果html时, 它切断了标签 例如: string html = "<select><option>test</option></select>"; HtmlDocument document = new HtmlDocument(); document.LoadHtml(html); var result = d.DocumentN

我正在使用codeplex中的HtmlAgilityPack。 当我将一个简单的html字符串传递给它,然后返回结果html时, 它切断了标签

例如:

string html = "<select><option>test</option></select>";
HtmlDocument document = new HtmlDocument();
document.LoadHtml(html);

var result = d.DocumentNode.OuterHtml;

// result gives me:
<select><option>test</select>
string html=“test”;
HtmlDocument document=新的HtmlDocument();
document.LoadHtml(html);
var结果=d.DocumentNode.OuterHtml;
//结果给了我:
测试

因此,该选项的结束标记丢失。是否缺少设置或使用错误?

在HTML中,标记没有结束标记

在XHTML中,标签必须正确关闭

“也不遵守XHTML或XML”-


这可能是为什么?我的猜测是,如果标签是可选的,敏捷包将不使用它。希望这有帮助

在HTML中,标记没有结束标记

在XHTML中,标签必须正确关闭

“也不遵守XHTML或XML”-


这可能是为什么?我的猜测是,如果标签是可选的,敏捷包将不使用它。希望这有帮助

我在源代码中注释了HtmlNode.cs的第92行,并对其进行了编译,从而修复了这一问题,它的工作非常出色

ElementsFlags.Add("option", HtmlElementFlag.Empty); // comment this out

找到了问题的答案

我在源代码中注释了HtmlNode.cs的第92行,并对其进行了编译,结果很好地解决了这个问题

ElementsFlags.Add("option", HtmlElementFlag.Empty); // comment this out

找到问题的答案

您知道一种方法可以将发送给HtmlDocument设置的属性设置为XHTML而不是HTML吗?我在这一点上迷路了@劳埃德汉曼16你能解释一下为什么在HTML中
标记没有结束标记。
?@Icarus-因为这是w3schools页面上说的。就像w3schools一样,它是在胡说八道。@Alochi我没有读w3schools的网站。现在我明白了Lloydhanneman 16的来历。。。谢谢。在HTML中,标记不需要结束标记,这不是真的吗?你知道一种方法可以将一个属性设置为XHTML而不是HTML,从而向HtmlDocument设置发出信号吗?我在这一点上迷路了@劳埃德汉曼16你能解释一下为什么在HTML中
标记没有结束标记。
?@Icarus-因为这是w3schools页面上说的。就像w3schools一样,它是在胡说八道。@Alochi我没有读w3schools的网站。现在我明白了Lloydhanneman 16的来历。。。谢谢。在HTML中标记不需要结束标记,这不是真的吗?你不需要注释它<代码>元素标签是公共可见字段。只需在加载HTML之前删除密钥<代码>HtmlNode.ElementsFlags.Remove(“选项”)你不需要注释掉它<代码>元素标签是公共可见字段。只需在加载HTML之前删除密钥<代码>HtmlNode.ElementsFlags.Remove(“选项”)