HtmlAgilityPack 잘못된 마크 업

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.DocumentNode.OuterHtml;

// result gives me:
<select><option>test</select>

따라서 옵션의 종료 태그가 누락되었습니다. 설정이 누락되었거나 잘못 사용하고 있습니까?

수락 된 답변

나는 소스에서 HtmlNode.cs의 92 행을 주석 처리하여 이것을 고쳤으며, 컴파일 된 것은 매력처럼 작동했다.

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

질문에 대한 답을 찾았습니다.


인기 답변

HTML에서 태그에는 끝 태그가 없습니다.

XHTML에서는 태그를 제대로 닫아야합니다.

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

"XHTML이나 XML에도 순응하지 않습니다."- HTML 민첩성 팩 .

왜 그런가? 내 생각 엔 태그가 선택 사항 인 경우 민첩성 팩을 사용하지 않을 것입니다. 희망이 도움이!



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.