Beim Versuch, Code beim Klicken auf eine Schaltfläche auszuführen, tritt ein Problem auf, bei dem die Postdaten nicht erfolgreich übertragen werden eine angegebene PHP-Datei mit dem Namen „MonsterRequest.php“. Stattdessen lädt sich die Seite neu, als ob die Daten an die übergeordnete Hauptseite gesendet würden. Das Ziel besteht darin, Daten zu veröffentlichen, ohne dass die Seite neu geladen wird.
AJAX: Asynchrones JavaScript und XML
Um dieses Problem zu verstehen, Es ist wichtig, mit AJAX vertraut zu sein. AJAX ist eine Technik, die in der Webentwicklung verwendet wird, um den Datenaustausch zwischen einem Webbrowser und einem Webserver zu ermöglichen, ohne die Seite neu laden zu müssen. Dies ist mit dem XMLHttpRequest-Objekt in JavaScript möglich, das Anfragen asynchron an den Webserver sendet.
In Ihrem Code verwenden Sie $.load, um die Datei „MonsterRequest.php“ in das „CenterPiece“-Div zu laden . Für die Veröffentlichung von Daten ist diese Methode jedoch nicht geeignet. Es wird hauptsächlich verwendet, um externe Inhalte in ein bestimmtes Element zu laden.
Um Daten zu veröffentlichen, ohne die Seite neu zu laden, sollten Sie die Methode $.ajax verwenden. Mit dieser Methode können Sie asynchrone Daten an ein serverseitiges Skript senden und eine Antwort erhalten, ohne den Inhalt der Hauptseite zu beeinträchtigen.
Hier ist eine modifizierte Version Ihres Codes mit $.ajax:
Readthis = "MonsterRequest.php?id=<?php echo $_REQUEST['id']; ?>&Mon="; TestVar = TestVar.replace(/\s/g, ""); Readthis = Readthis + htmlencode(TestVar); $.ajax({ url: Readthis, type: "POST", data: { Mon: TestVar }, success: function(data) { // Handle the server response here (e.g., display data in the "CenterPiece" div) } });
In diesem Code wird die Methode $.ajax verwendet, um die in der Variablen „TestVar“ enthaltenen Daten an „MonsterRequest.php“ zu senden, ohne die Seite neu zu laden. Die Funktion „success“ kann verwendet werden, um die Antwort des Servers zu verarbeiten und das DOM nach Bedarf zu aktualisieren.
Das obige ist der detaillierte Inhalt vonWie poste ich mit AJAX Daten in eine PHP-Datei, ohne die Seite neu zu laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!