Meine Frage ist, wie kann ich den HTML-Code einer Seite erhalten und in einem Objekt speichern, das ich später mit jQuery-Methoden durchsuchen kann, um Elemente nach ID, Name, Klasse usw.Wie man eine .ajax() responseText auf eine Variable setzt
Dies ist, was ich bisher:
$(document).ready(function(){
$('#button').click(function() {
var page = $.ajax({
type: 'GET',
url: 'Grabber.php',
data: {url:$('#url')},
dataType: "HTML",
success: function(data){
alert(data); //this alert displays the correct information
}
}).responseText;
alert(page); //this alert displays nothing
});
});
Wie kann ich die „Seite“ Variable zu arbeiten? Und noch besser, wie kann ich es speichern, damit ich darauf zugreifen kann, als wäre es ein HTML-Dokument. Meine einzige Idee ist bisher ein DOM-Dokument.
Ich habe dies bereits versucht und die Warnung gibt eine "undefined" –
Die Warnung() kann passieren, bevor der Ajax-Aufruf abgeschlossen ist, was zu einer leeren Seite Variable. Sie müssen innerhalb der Erfolgsfunktion arbeiten, um sicherzustellen, dass die Daten wirklich da sind. – Alec
Setzen Sie alert() in die Erfolgsfunktion. alert() wird aufgerufen, bevor die HTTP-Anfrage zurückkommt, also ist sie nicht definiert. Entweder das, oder set 'async: false', so dass es darauf wartet, dass die HTTP-Anfrage zurückkommt. Aber ich würde empfehlen, alles in der Erfolgsfunktion zu tun, damit andere Dinge nicht aufgehalten werden. – Wiseguy