2012-02-29 102 views
7

我想在另一页(2.html)要使用的HTML页面(1.html)的源代码。此外,我想在2.html上执行操作。获取HTML源代码作为字符串

有没有办法做到这一点?

编辑:1.html是一个独立的公共网页,我没有获得修改其源代码。我必须通过使用2.html来做任何我需要的。

+0

什么样的操作? – 2012-02-29 10:39:39

+0

您是否想使用jQuery从2.html获取1.html页面的全部内容?如果我能正确理解你想要做的事情,你可以创建一个AJAX请求并获得它。 – 2012-02-29 10:40:28

+0

@Pekka:简单的操作就像从1.html中提取一些innerHTML并将其显示到2.html Aldo'xeon'中:它是一个跨域请求,所以AJAX不起作用。 – user1196522 2012-02-29 10:42:34

回答

15

为了让DOM转换为字符串:

document.getElementsByTagName('html')[0].innerHTML 

问:什么叫“用它”是什么意思?你需要在2.html中包含1.html吗?或者你只需​​要处理它?

+0

海报希望有不同的页面HTML。 – 472084 2012-02-29 10:43:12

+0

我只需要处理它。我有机会改变只有2.HTML的源代码.. – user1196522 2012-02-29 10:44:39

+7

'.innerHTML'实际上并不返回的源代码,它生成的HTML对应于当前的DOM树。细微的差异,但仍然... – nnnnnn 2012-02-29 10:45:38

3

它非常简单

2.html使用这个jQuery片断

$.get("1.html", function(response) { 
    alert(response) 
    //do you operations 
}); 
3

的jQuery:

$.get('ajax/test.html', function(data) { 
    $('.result').html(data); 
    alert('Load was performed.'); 
}); 
+1

呃..我3秒打败你.... – Starx 2012-02-29 10:42:38

1

我不明白whatyou意味着你必须做出修改,但你可以简单地通过AJAX

var url ="1.html"; 
$.ajax({ 
    url: url, 
    dataType: 'html' 
    success: function(data){ 
      //do something with data, which is the page 1.html 
      } 

}); 
加载第二页
0

使用可以使用.html方法来获取页面的整个html数据。

$(function(){ 
    var a = ($('html').html()) 
})​