Недопустимая разметка HtmlAgilityPack

c# html html-agility-pack

Вопрос

Я использую HtmlAgilityPack из codeplex. Когда я передаю в него простую строку 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>

Таким образом, закрывающий тег для опции отсутствует. Я пропустил настройку или использовал это неправильно?

Принятый ответ

Я исправил это, комментируя строку 92 файла HtmlNode.cs в источнике, скомпилировал и работал как шарм.

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

Нашел ответ по этому вопросу


Популярные ответы

В HTML тег не имеет конечного тега.

В XHTML тег должен быть правильно закрыт.

http://www.w3schools.com/tags/tag_option.asp

«Существует также отсутствие привязанности к XHTML или XML» - HTML Agility Pack .

Это может быть почему? Я предполагаю, что если тег не является обязательным, пакет Agility Pack оставит его. Надеюсь это поможет!



Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему