相关疑难解决方法(0)

HtmlAgilityPack删除选项结束标记

我正在使用HtmlAgilityPack.我用以下字符串创建一个HtmlDocument和LoadHtml:

<select id="foo_Bar" name="foo.Bar"><option selected="selected" value="1">One</option><option value="2">Two</option></select>
Run Code Online (Sandbox Code Playgroud)

这有些意想不到的事情.首先,它给出了两个解析器错误,EndTagNotRequired.其次,select节点有4个子节点 - 两个用于选项标签,另外两个用于选项标签的内部文本.最后,OuterHtml是这样的:

<select id="foo_Bar" name="foo.Bar"><option selected="selected" value="1">One<option value="2">Two</select>
Run Code Online (Sandbox Code Playgroud)

所以基本上我决定放弃选项上的结束标记.让我们暂时搁置一下,这样做是否合适和可取.我正在使用HtmlAgilityPack来测试HTML生成代码,所以我不希望它为我做出任何决定或者给出任何错误,除非HTML确实是错误的.有没有办法让它表现得我想要的?我尝试为HtmlDocument设置一些选项,具体来说:

 doc.OptionAutoCloseOnEnd = false;
 doc.OptionCheckSyntax = false;
 doc.OptionFixNestedTags = false;
Run Code Online (Sandbox Code Playgroud)

这不起作用.如果HtmlAgilityPack不能做我想做的事,你能推荐一些可以吗?

html parsing html-agility-pack

23
推荐指数
2
解决办法
8000
查看次数

HTML Agility Pack从输入中剥离自闭标签

这就是我创建我的复选框的方式:

HtmlInputCheckBox checkbox = new HtmlInputCheckBox();
checkbox.ID = _Data.ControlID;
checkbox.Attributes.Add("class", "checkbox");
checkbox.Attributes.Add("autocomplete", "off");
sReplacementString = element.RenderToString();
Run Code Online (Sandbox Code Playgroud)

RenderToString 是这样做的扩展:

public static string RenderToString(this Control control)
{
    StringBuilder sb = new StringBuilder();
    using (StringWriter writer = new StringWriter(sb))
    {
        using (HtmlTextWriter htmlWriter = new HtmlTextWriter(writer))
        {
            control.RenderControl(htmlWriter);
        }
    }
    return sb.ToString();
}
Run Code Online (Sandbox Code Playgroud)

这会在输入上生成一个带有结束标记的字符串,我可以在调试时看到这一点.

<input name="ttWBF_1" type="checkbox" id="ttWBF_1" autocomplete="off" class="checkbox" />
Run Code Online (Sandbox Code Playgroud)

然后使用Agility Pack将其添加到HTML中:

HtmlNode temp = doc.CreateElement("temp");
temp.InnerHtml = sReplacementString;
HtmlNode current = inputNode;

foreach (HtmlNode child in temp.ChildNodes)
{
    inputNode.ParentNode.InsertAfter(child, current);
    current …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net html-agility-pack

5
推荐指数
2
解决办法
5429
查看次数

HTML选择器库

点网世界中是否存在任何类似jQuery的html元素选择器库?我正在构建一个涉及大量html解析的应用程序。

假设我只想枚举ID为“ post_message_%”的选定“ div”中的所有“ href”和“ src”。或者说要在具有特定ID或输入类型(例如隐藏或广播)的表单中选择名称和值字符串

我可以编写代码。.但是首先要寻找任何现有的解决方案,以便可以使用它并节省其他时间。

.net html c# jquery jquery-selectors

2
推荐指数
2
解决办法
3537
查看次数