a.php Datei
function get_preset() {
return (bunch of html, javascript);
}
echo get_preset();
b.php Datei
<button type="button" id="preview">Preview Preset</button>
<div id="preset_preview">
<?php include "a.php"; ?>
</div>
<script>
$('#preview').on('click', function(e) {
e.preventDefault();
$("#preset_preview").load('a.php');
});
</script>
Es gibt mehrere Methoden von jQuery AJAX sind, die Sie tatsächlich nutzen können. Beispiel oben verwendet load()
, die Ihre Anfrage mit get-Methode umschließt (Sie können ihre Anfrage-Methode durch den Aufruf von ajaxSetup()
anyways) auf die relative URL von a.php umschreiben.
Sie können a.php echo
ing (string of?) Sehen get_preset()
Funktion, die innerhalb <div id="preset_preview">
in b.php Datei dann platziert werden.
Um die Bedürfnisse der AJAX in diesem Fall zu erweitern, weil PHP tut nur so etwas wie
- eine Anfrage bekommen, egal, was die Methode (get, Post, put, etc)
- Gibt eine Antwort zurück. Normalerweise, nachdem Sie eine Logik in Bezug auf den Anforderungswert durchgeführt haben.
Es stirbt, wenn Ihr erwartet Reaktion auf Client-Seite gerendert. Du kannst nichts Zauberei hinter der Wand machen, direkt nachdem die Antwort zurückgegeben wurde. Mit anderen Worten, eine Seitenladung wird benötigt.
Und dann kommt AJAX, um Ihnen zu helfen, eine andere Anfrage an die entsprechende PHP-Datei zu erstellen. Es belebt eine PHP-Datei, um (eine andere) Anfrage zu machen -> mach etwas Logik -> dann gib es zurück. Still, ohne Seitenladung.
Und in Antwort des Kommentars - Kann dies mit Funktionsaufrufen irgendwie ohne die eigentliche PHP-Datei in Preset_preview getan werden?
Es ist alles ja. Solange Sie bedienen, was der Anrufer braucht.
a.php Datei
function get_preset() {
return (bunch of html, javascript);
}
echo get_preset();
Die a.php ist einfach echo
get_preset()
ing.
b.php
<button type="button" id="preview">Preview Preset</button>
<div id="preset_preview"></div>
<script>
$('#preview').on('click', function(e) {
e.preventDefault();
$("#preset_preview").load('a.php');
});
</script>
Die b.php Datei einfach macht einen Anforderungsdatei a.php. Immer wenn die Schaltfläche mit der Selektor-ID #preview
angeklickt wird, wird der Inhalt der a.php auf #preset_preview
geladen.
Sie können den Inhalt der a.php auch direkt nach der Fertigstellung der Seite rendern. Dies ist ein ähnlicher Ansatz wie mein erster Abschnitt, wie oben beschrieben.
<script>
$(document).ready(function() {
$('#preset_preview').load('a.php');
});
$('#preview').on('click', function(e) {
e.preventDefault();
$("#preset_preview").load('a.php');
});
</script>
Es sagt Ihnen einfach, dass Sie direkt nach der b.php Seite laden a.php sollte, ist bereit und „reload“ es einmal auf die Schaltfläche geklickt.
Klingt so, als müssten Sie den Unterschied zwischen clientseitigen und serverseitigen Skripten kennen lernen, um zu beantworten, was immer Sie gerade fragen. – PeeHaa
Sie können a.php-Datei in b.php-Datei einschließen und rufen Sie dann 'get_preset()' in Ihrer b.php-Datei, und wenn Sie Daten benötigen, rufen Sie ajax b.php –
Bitte versuchen Sie zu erklären, was Sie eigentlich tun möchten mit diesem Code. Wie wird zum Beispiel das JS und HTML tun. Damit können wir mehr helfen. –