Heim >Backend-Entwicklung >PHP-Tutorial >Warum sendet mein $.load() keine Formulardaten und wie kann ich stattdessen AJAX verwenden?
Formulardaten werden nicht über $.load übermittelt
Frage:
Ein Klick auf eine Schaltfläche wird ausgelöst den folgenden Code, aber seine Post-Anfrage erreicht die vorgesehene PHP-Datei (MonsterRequest.php) nicht, wenn sie über einen $.load-Aufruf ausgeführt wird. Stattdessen wird die Seite neu geladen, wodurch die Möglichkeit eingeschränkt wird, Daten ohne Neuladen zu übermitteln.
Antwort:
Um das Posten von Daten ohne Neuladen der Seite zu erleichtern, ist es wichtig, AJAX zu verstehen. AJAX verarbeitet Daten, indem es sie an eine externe PHP-Datei sendet, die mit einem Ergebnis antwortet.
Implementierung:
In der ersten Datei fügen Sie einen Change-Event-Handler an die an relevantes Element, um die ausgewählte Option zu erfassen. Die Daten werden dann über eine AJAX POST-Anfrage an die zweite Datei gesendet. Bei Erfolg werden die zurückgegebenen Daten in einer Warnung angezeigt.
Datei 1:
<script> $(document).ready(function() { $('#Sel').change(function() { var opt = $(this).val(); $.ajax({ type: "POST", url: "receiving_file.php", data: 'selected_opt=' + opt, success:function(data){ alert('This was sent back: ' + data); } }); }); }); </script>
Datei 2:empfangende_datei.php
$recd = $_POST['selected_opt']; echo 'You chose: ' . $recd;
Das obige ist der detaillierte Inhalt vonWarum sendet mein $.load() keine Formulardaten und wie kann ich stattdessen AJAX verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!