1

想象一下,我有一个 3 列布局。左、中和右 div。我只想导出中心 div。到目前为止,这是我的导出方法:

function getHtml() {
    var htmlStartTag = function(){
        var attrs = $('html')[0].attributes;  
        var result = '<html';
        $.each(attrs, function() { 
            result += ' ' + this.name + '="' + this.value + '"';
        });                                               
        result += '>';
        return result;
    }    

return htmlStartTag() + $('html').html() + '</html>';
}

我的问题是,如何将 DOM 保存到 html 文件中,比如 template.html?当用户点击导出时,整个 DOM 应该被保存或下载为 html 文件。这可能吗,你能举个例子吗?我的应用程序只使用 jquery 和 html。它不是服务器端应用程序!

4

2 回答 2

5

您可以使用data:URI,如使用 HTML5/Javascript 生成和保存文件中所见(第二个答案,获得 50 多票的答案)

http://jsfiddle.net/gBxrB/这样的东西应该可以解决您的问题。

HTML

<div class="left">leftleftleft</div>
<div class="center">center</div>
<div class="right">rightrightright</div>
<a href="#" class="export">export</a>​

JS

$('a.export').on('click',function(){
   uriContent = "data:application/octet-stream," + encodeURIComponent( $('.center').html() );
   window.open(uriContent, 'myDocument');
});
于 2012-07-30T11:41:19.980 回答
0

你不能用javascript保存文件

于 2012-07-30T11:36:14.597 回答