2012-02-29 14 views
7

Desidero che il codice sorgente di una pagina HTML (1.html) sia utilizzato in un'altra pagina (2.html). Inoltre, voglio eseguire operazioni su di esso in 2.html.Ottieni codice sorgente HTML come stringa

C'è un modo per farlo?

MODIFICA: 1.html è una pagina Web pubblica separata e non ho accesso per apportare modifiche al suo codice sorgente. Devo fare tutto ciò di cui ho bisogno usando solo 2.html.

+0

Che tipo di operazioni? –

+0

Vuoi ottenere l'intero contenuto della pagina 1.html da 2.html usando jQuery? Potresti fare una richiesta AJAX e prenderla se ho capito bene cosa vuoi fare. –

+0

@Pekka: Semplici operazioni come estrarre un innerHTML da 1.html e visualizzarlo in 2.html Aldo 'xeon': è una richiesta cross domain, quindi AJAX non funziona. – user1196522

risposta

15

Per ottenere il DOM convertito in una stringa:

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

Domanda: che cosa si intende per "usarlo"? Hai bisogno di includere 1.html all'interno di 2.html? O hai solo bisogno di elaborarlo?

+0

Poster vuole un HTML di pagine diverse. – 472084

+0

ho solo bisogno di elaborarlo .. Ho accesso a cambiare il codice sorgente di solo 2.html .. – user1196522

+7

'.innerHTML' non restituisce il codice sorgente, esso genera html per corrispondere all'attuale albero DOM. Sottile differenza, ma comunque ... – nnnnnn

3

E 'molto semplice

Su 2.html uso questo jQuery snippet

$.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

Heh .. Ti ho battuto di 3 secondi .... – Starx

1

non capisco whatyou significa che si deve apportare modifiche, ma si può semplicemente caricare la seconda pagina tramite AJAX

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

}); 
0

L'utilizzo può utilizzare il metodo .html in alternativa per ottenere gli interi dati html della pagina.

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