gpt4 book ai didi

javascript - HTML 敏捷包忽略输入斜杠

转载 作者:行者123 更新时间:2023-11-27 22:42:17 24 4
gpt4 key购买 nike

我已经尝试了所有答案来解决这个问题,但它对我不起作用..代码就像

 HtmlNode.ElementsFlags.Remove("option");
HtmlNode.ElementsFlags.Remove("link");
HtmlNode.ElementsFlags.Remove("meta");
HtmlNode.ElementsFlags.Remove("form");
HtmlDocument html = new HtmlDocument();
HtmlNode.ElementsFlags["input"] = HtmlElementFlag.Empty;
html.OptionWriteEmptyNodes = true;
html.load(file);
var ETagTable = html.CreateElement("table");
ETagTable.InnerHtml = ChangedTagE_Str;

/* where changedtage_str = <tr>
<th>Reference:</th>
<td><input type="text" id="e.reference" size="30" maxlength="32" value="" /></td>
</tr>*/

innerHTML 中的输入为 <input type="text" id="e.crm_reference" size="30" maxlength="32" value="">

我要<input type="text" id="e.crm_reference" size="30" maxlength="32" value="" />

请问有什么解决办法吗?

最佳答案

将OptionWriteEmptyNodes设置为true,修改文档中的html并通过调用LoadHtml()解析回结果html。

HtmlDocument html = new HtmlDocument();
html.OptionWriteEmptyNodes = true;
html.Load("page.htm");
html.DocumentNode.Element("html").Element("body").InnerHtml = "<input type=\"text\" />";
html.LoadHtml(html.DocumentNode.OuterHtml); //Reload the document

如果您使用 Load()LoadHtml() 方法加载外部 html,则 Gauthaman 的建议有效,但在插入新元素或设置时则无效innerHTML 属性。

我们能做的就是欺骗 Agility 重新加载文档。

HtmlDocument html = new HtmlDocument();
html.OptionWriteEmptyNodes = true;
html.LoadHtml("<!DOCTYPE html><html><head><title>ttt</title></head><body></body></html>");
var ETagTable = html.CreateElement("table");
html.DocumentNode.Element("html").Element("body").AppendChild(ETagTable);
ETagTable.InnerHtml = "<tr><th>Reference:</th><td><input type=\"text\" size=\"30\""
+"maxlength=\"32\" value=\"\" /></td></tr>";
html.LoadHtml(html.DocumentNode.OuterHtml); //<-- Reload the document
Console.WriteLine(html.DocumentNode.InnerHtml);

关于javascript - HTML 敏捷包忽略输入斜杠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38653325/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com