2011-10-17 5 views
0

Je ne suis pas sûr si c'est même possible, mais je suppose qu'il doit y avoir un moyen. J'essaye de vérifier si une certaine page est toujours en ligne et si elle a toujours le contenu que j'attends. À des fins de démonstration, j'essayais d'obtenir le titre du site distant.jQuery + AJAX + Cross Domain + Obtenir le contenu

donc je tentais quelque chose comme ceci:

$.ajax({ 
    dataType: 'jsonp', 
    jsonp: 'jsonp_callback', 
    url: 'http://www.confickerworkinggroup.org/infection_test/cfeyechart.html', 
    success: function (response) { 
     var newTitle = $(response).filter('title').text(); 
     alert(newTitle); 
    } 
    }); 

Mais cela ne fonctionne pas, ce qui est l'erreur dans Firebug:

invalid XML attribute value 
<META NAME=AUTHOR CONTENT="Joe Stewart"> 

Je suis nouveau à tout cela, donc je ne suis pas Bien sûr où le problème principal est (je suppose qu'il y en a plus d'un).

Edit:

Je pense que ce que je réellement besoin d'aide, est de « analyser » le jsonp retourné, pour que je puisse l'utiliser avec jquery juste si elle était un contenu simple.

Edit 2:

Juste au cas où any1 est à la recherche d'une chose semblable, je suis tombé sur this site et il fonctionne très bien, mais je suis toujours à la recherche d'une façon de le faire avec jQuery et gardera ce poste actualisé.

Répondre

0

Il semble que cela fonctionne, mais il ne renvoie pas le code XML valide dans cette page car la balise meta n'a pas d'élément de fermeture. Vous souhaiterez peut-être définir le type de données sur html à la place.

+0

Salut, oui aussi pensé qu'il semble fonctionner, mais ne peut pas contourner cette erreur ... Lors du changement de type de données en HTML, cela ne marche pas du tout. Je reçois "GET http://www.confickerworkinggroup.org/infection_test/cfeyechart.html 200 OK" - mais avec une réponse vide. – Andrej

-2

Voici un exemple qui peut vous aider à travailler avec jquery ajax.

$.ajax({ 
    type: "[POST|GET]", 
    url: "[URL]", 
    data: "{'[key]': '[value]' }", 
    contentType: "[Content Type] ", 
    dataType: "json", 
    success: function(response) { 
    //TODO: Add function or method to response handler 
    }, 
error: function(e){ 
    //TODO: Add function or method to error handler. 
} 
}); 

tapez: Type de demande que vous faites. url: URL à laquelle vous voulez envoyer une requête. données: données JSON voulez-vous envoyer (ceci est un paramètres). [Facultatif] contentType: Type de contenu que vous envoyez. [Facultatif] dataType: Type de données renvoyé sur la réponse. success: Pour ajouter un gestionnaire de réponse. erreur: pour ajouter un gestionnaire d'erreur.

Pour plus d'informations sur .ajax $ (http://api.jquery.com/jQuery.ajax/)

+0

Salut, je préfère avoir besoin d'aide pour ma question spécifique. Je peux bien sûr lire la documentation officielle moi-même. Merci! – Andrej