<!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(){

        $('#myiframe')[0].document.execCommand('SaveAs',false,'somexml.xml');

    });

</script>
</head>
<body>
<iframe id="myiframe" src="somexml.xml" frameborder="0"></iframe>
</body>
</html>


我知道execCommand仅在IE中有效,但我无法使它正常工作。我想要的只是一个“另存为”对话框,其中保存了iframe内容。因此,我想在iframe中而不是在“主”页面上运行该函数。

谢谢

最佳答案

尝试这个:

var oIframe = $('#myiframe')[0];
var oDoc = oIframe.contentWindow || oIframe.contentDocument;
if (oDoc.document) {
    oDoc = oDoc.document;
}
oDoc.execCommand('SaveAs',false,'somexml.xml'); // this line will work only in IE


请参阅以下链接,以正确获取iframe的文档对象:http://xkr.us/articles/dom/iframe-document/

09-30 14:25