Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/412.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript HTML5会话存储和XMLDocument_Javascript_Html_Sessionstorage - Fatal编程技术网

Javascript HTML5会话存储和XMLDocument

Javascript HTML5会话存储和XMLDocument,javascript,html,sessionstorage,Javascript,Html,Sessionstorage,我想在sessionStorage中存储XML文档。当我这样做时,它似乎将ok保存为XMLDocument。当我尝试访问它时(在页面刷新时),对象返回为[object object],而不是[object XMLDocument] 如何将sessionStorage中的数据作为XMLDocument(或将其转换为一个?localStorage和sessionStorage只能保存字符串。请看一下: 除非序列化对象,否则无法存储对象。所以在你的情况下,你必须这样做 如果您将XML文档作为文本接收,

我想在
sessionStorage
中存储XML文档。当我这样做时,它似乎将ok保存为
XMLDocument
。当我尝试访问它时(在页面刷新时),对象返回为
[object object]
,而不是
[object XMLDocument]


如何将
sessionStorage
中的数据作为
XMLDocument
(或将其转换为一个?

localStorage
sessionStorage
只能保存字符串。请看一下:

除非序列化对象,否则无法存储对象。所以在你的情况下,你必须这样做


如果您将XML文档作为文本接收,只需直接存储它。您可以使用在检索后对其进行解析。

您可能希望在将XMLDocument保存到存储器之前对其进行序列化:

var xml = new XMLSerializer().serializeToString(originalDom);
sessionStorage.setItem("myDocument", xml);
然后在从存储器加载数据后取消序列化:

var xml = sessionStorage.getItem("myDocument");
var restoredDom = new DOMParser().parseFromString(xml, "text/xml");

您是否尝试了新的XMLDOcument(object)?@FelixKling如何将(jQuery)xml转换为字符串,然后再转换回来?
JSON.stringify()
是一种可能的方法。我如何将xml(使用jQuery)序列化为字符串?@alex:可能不适用于XMLDOcument。我假定它是循环引用。但是对于“普通对象”,您是对的。谢谢您,但是我如何将jqueryxml文档转换为XMLDocument呢?您应该看看文档。在那里它声明
jQuery.parseXML()
返回一个
XMLDocument
。但是新的XMLSerializer().serializeToString(originalDom);未完全将child转换为正确的字符串。
var xml = sessionStorage.getItem("myDocument");
var restoredDom = new DOMParser().parseFromString(xml, "text/xml");