2010-02-10 6 views
0

J'ai une url et je veux récupérer le html dom généré en allant à l'url (tout le code de la page) dans une variable javascript.comment puis-je récupérer un document html à partir d'une URL de javascript?

Comment est-ce que je peux faire ceci? Je devine un html obtenir ou poster? Quelqu'un peut-il donner un exemple avec jQuery?

Chaque fois que je fais un .get $ ou .post $ comme ceci:

$.get("http://www.google.ca", function(result) { alert(result); alert($(result).html()); }); 

$.post("http://www.google.ca", function(result) { alert(result); alert($(result).html()); }, "xml"); 

la première alerte dans chaque appel est en blanc et le second vient comme nul. Des idées?

Merci,
Matt

Répondre

0

Vous ne pouvez récupérer les documents (de cette manière) à partir de votre propre domaine en raison de la same origin policy.

+0

Je l'ai définitivement fait avant ... je ne me souviens plus exactement comment. Ce site que je poste pour retourner une page générée en tant que réponse, donc je pense que c'est un post ... Je continue à obtenir null retourné pour une raison quelconque. La même politique d'origine ne s'applique pas, tout ce que je veux c'est tirer sur le dom html pour que je puisse chercher dans le dom et extraire les informations que je recherche. – Matt

+0

La seule chose que vous pouvez tirer d'une origine différente en javascript est javascript. Pour html, vous ne pouvez pas extraire d'un domaine différent. Si vous pouviez alors personne ne serait à l'abri de xsrf. Si vous avez déjà eu ce travail il était probablement dans un fichier local que votre navigateur a considéré comme "approuvé". La solution de contournement standard consiste à faire agir votre serveur en tant que médiateur. Par exemple: votre code client demande à votre serveur d'aller chercher la page que vous voulez. Cela fonctionne puisque votre serveur est la même origine que votre js. –

+0

qu'en est-il dans le code de fin arrière? Si je l'ai fait en C#? Parce que la dernière fois que je l'ai fait, je crois que c'était avec php ... qui est le code de retour n'est-ce pas? – Matt

0

$ ("# divId"). Load ("documentname.html");

Questions connexes