Globale Ajax Callback Funktionen
Es ist möglich über PHP bei jedem Request eine JavaScript-Funktion zusätzlich auszuführen. Dieser Text beschreibt wie JavaScript Funktionen registriert werden müssen, damit dies möglich ist.
In bestimmten Fällen muss zusätzlich zu dem Ergebnis einer Ajax Funktion noch zusätzlich eine JavaScript-Routine ausgeführt werden. Hierfür gibt es globale JavaScript Callback Funktionen.
Damit über PHP eine JavaScript-Funktion angesprochen werden kann, muss diese Global im Ajax Handler registriert werden:
JavaScript
require(['Ajax'], function(QUIAjax) {
QUIAjax.registerGlobalJavaScriptCallback('nameOfMyCallback', function(jsParams, phpParams) {
// callback code
});
});
Wenn eine JavaScript-Funktion registriert ist, kann an jeder Stelle des PHP Codes gesagt werden das zusätzliche diese Funktion ausgeführt werden soll.
Achtung: Auch bei Exceptions oder Fehlern werden diese Funktionen im JavaScript ausgeführt.
PHP
<?php
QUI::$Ajax->triggerGlobalJavaScriptCallback('nameOfMyCallback', array('params1', 'param2'));