Ich fragte mich, ob jemand mir helfen könnte. Ich habe eine PHP-Seite, die Zeilen aus einer Datenbank ausgibt. Ich möchte es alle 30 Sekunden über jquery/ajax aufrufen. Aber ich möchte auch die Seite jederzeit aufrufen können, damit, wenn ich einen Datensatz über das Formular hinzufüge, sobald das Formular übermittelt wird, möchte ich die Seite über Ajax aufgerufen, um die Ergebnisse sofort zu aktualisieren. Kann mir jemand in die richtige Richtung zeigen oder einen Basiscode zur Verfügung stellen, damit ich versuchen kann, das herauszufinden? Immer noch sehr neu in jQuery/Ajax.Jquery/Ajax Anruf mit Timer
37
A
Antwort
67
Wenn Sie etwas auf einen Timer einstellen möchten, können Sie JavaScripts setTimeout
oder setInterval
Methoden verwenden:
setTimeout (expression, timeout);
setInterval (expression, interval);
Wo expression
eine Funktion ist und timeout
und interval
ganze Zahlen in Millisekunden sind. setTimeout
startet den Timer einmal und führt die expression
einmal, während setInterval die expression
jedes Mal ausgeführt wird, die interval
passiert.
in Ihrem Fall So wäre es so etwas wie dies funktioniert:
setInterval(function() {
//call $.ajax here
}, 5000); //5 seconds
Was die Ajax geht, sehen jQuery ajax()
method. Wenn Sie ein Intervall ausführen, gibt es nichts, was Sie daran hindern könnte, dasselbe ajax()
von anderen Stellen in Ihrem Code aufzurufen.
Verwandte Themen
- 1. Aufruf einer WebMethod jQueryAjax mit „GET“
- 2. ASP.NET Timer: Anruf JS vor Tick
- 3. Upload-Bild in einen Ordner jqueryajax
- 4. Alarmmanager vs Handler/Timer mit langen Timer
- 5. Anruf Golang Anruf JsonRPC mit Curl
- 6. WPF Anruf MessageBox.Show asynchron
- 7. Countdown-Timer mit Fortschrittsbalken
- 8. Timer mit Vorsatz Extras
- 9. JavaScript Alarmbox mit Timer
- 10. Windows-Dienst mit Timer
- 11. Sende Nachrichten mit Timer
- 12. Mit Timer und Spielschleife
- 13. Fade-Effekt mit Timer?
- 14. Jquery-Countdown mit synchronem Ajax-Anruf Problem
- 15. nicht initialisierte Konstante Timer :: Timer
- 16. iOS UIWebView Javascript Timer
- 17. Wie stoppe ich Countdown-Timer mit asp.net Timer-Steuerelement?
- 18. ListView mit Coundown-Timer. Timer flackert beim Scrollen der Listenansicht
- 19. Android Countdown Timer Circular Fortschrittsbalken passt nicht mit Timer
- 20. Mit Timer und Countdown-Timer in Android-App
- 21. Problem mit System() Anruf
- 22. Anruf mit GSM-Modem
- 23. Ember.RSVP.Promise mit AJAX Anruf
- 24. JQuery Countdown-Timer mit Millisekunden
- 25. C# updatepanel mit Timer page_load
- 26. Asynchrones HttpWebRequest-Problem mit Timer
- 27. Abstrakte Klasse mit Swing-Timer
- 28. Django Sellerie Anwendung mit Timer
- 29. Prototyp JS: Mouseover mit Timer?
- 30. Java - Benutzereingabe threadin mit Timer
Danke für die Antwort! Dein Sprichwort, wenn ich den Code oben verwende, um den Ajax-Anruf alle 5 Sekunden zu aktualisieren, dann habe ich auf der gleichen Seite ein Formular, das jemand ausfüllt, sobald er fertig ist, den Datensatz hinzufügend, kann ich die selbe setInterval-Funktion oben aufrufen haben 2 Instanzen dieser Funktion gleichzeitig ausgeführt? – John
Sie möchten also, dass ein Intervall alle 30 Sekunden ausgeführt wird * bis * ein Benutzer eine Formularübergabe initiiert ... und danach ein neues Intervall erstellt? Das ist auch möglich. 'setInterval()' gibt eine ganze Zahl zurück, die die ID des Intervalls ist. Wenn Sie diese ID in einer Variablen speichern, können Sie 'clearInterval (id)' aufrufen, wodurch der Fortschritt gestoppt wird. Dann können Sie den Aufruf 'setInterval()' wieder in Kraft setzen, nachdem Sie Ihre Ajax-Formularübertragung abgeschlossen haben. – treeface