gpt4 book ai didi

javascript firefox(17.01) parser.parseFromString 字符串太大,错误 NS_ERROR_XPC_BAD_CONVERT_JS

转载 作者:行者123 更新时间:2023-11-28 09:30:29 25 4
gpt4 key购买 nike

利用 firefox (17.01),我从上传的 .csv 文件生成 xml 代码。此代码随后将转换为 xhtml,但在此之前,我需要创建有效的 xml 文件。

我的整个代码是

var parser = new DOMParser();
var xml_doc = parser.parseFromString(xml_code,'text/xml');
var xslhttp = new XMLHttpRequest();
xslhttp.open("GET",xsl_code,false);
xslhttp.send();
var xsl_doc = xslhttp.responseXML;

var xsltProcessor = new XSLTProcessor();
xsltProcessor.importStylesheet(xsl_doc);
var xhtml_code = xsltProcessor.transformToFragment(xml_doc,document);

它可以正常工作,除非我处理大文件。特别是,当 xsl_code 与 112.039.355 (xml_code.length) 一样大时,脚本会失败。

错误信息是

NS_ERROR_XPC_BAD_CONVERT_JS: Could not convert JavaScript argument arg 0 [nsIDOMParser.parseFromString]

有什么解释吗? Firefox 有限制吗?我知道如果我从文件中删除内容,最终将正确生成 xml_doc

非常感谢

最佳答案

使用 childNodes 进行测试来查看文档是否超过 Firefox 设置的 4096 个字符限制。如果是这样,请使用循环来连接子节点:

var nodes = xml_code.childNodes;
var xml_string = '';
var xml_doc;

if (nodes.length > 1)
{
for (var i = 0; i < nodes.length; i++)
{
xml_string += nodes[i].nodeValue;
}
}
else
{
xml_string = xml_code;
}

with (new DOMParser() )
{
xml_doc = parseFromString(xml_string, "application/xml")
}

引用文献

关于javascript firefox(17.01) parser.parseFromString 字符串太大,错误 NS_ERROR_XPC_BAD_CONVERT_JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13788624/

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