jquery,保存整个DOM以便重新加载

时间:2012-01-17 18:02:29

标签: javascript jquery xml dom

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript">

    $(function(){

        var xml = '<?xml version="1.0"?><foo><bar>bar</bar></foo>';

        document.open("text/xml", "replace");
        document.write(xml);

        document.execCommand('SaveAs',true,'file.xml');

    });

</script>

 </head>
<body>

</body>
</html>

这个html文件生成一个xml文件(在IE中)并创建一个“另存为”对话框。但是,我想在保存文件后将文档重置为之前的状态(在“替换”之前)。这可能使用纯javascript或jQuery吗?感谢

4 个答案:

答案 0 :(得分:1)

document<iframe>运行该代码,而不是替换当前文档。

答案 1 :(得分:0)

您无需保存整个dom。只需保存可以更改的值(表单字段和其他通信的小UI位),并在必要时更新这些值。

如有必要,请编写一个可在需要时调用的重置功能。<​​/ p>

答案 2 :(得分:0)

根本没有,因为document.open()清除了文档。 你应该做什么SLaks说。

阅读https://developer.mozilla.org/en/DOM/document.open

答案 3 :(得分:0)

也许在弹出窗口中完成所有操作?

$(函数(){         var popup = window.open()         var xml ='bar';

    popup.document.open("text/xml", "replace");
    popup.document.write(xml);

    popup.document.execCommand('SaveAs',true,'file.xml');
    popup.close();
});