En lo que respecta a PHP (o realmente, un servidor web en general), una página HTML no es nada más complicado que una gran cadena.
Todo el trabajo sofisticado que puede hacer con un lenguaje como PHP, leer desde bases de datos y servicios web y todo eso, el objetivo final es el mismo principio básico: generar una cadena de HTML *.
Su gran cadena HTML no se convierte en nada más especial que eso hasta que la carga un navegador web. Una vez que un navegador carga la página, entonces pasa todo el otra magia - diseño, modelo de caja de cosas, la generación de DOM, y muchas otras cosas, incluyendo la ejecución de JavaScript.
Por lo tanto, no "llama a JavaScript desde PHP", "incluye una llamada de función de JavaScript en su salida".
Hay muchas maneras de hacer esto, pero aquí hay un par.
Usando solo PHP:
echo '<script type="text/javascript">',
'jsfunction();',
'</script>'
;
Escapar del modo php al modo de salida directa:
<?php
// some php stuff
?>
<script type="text/javascript">
jsFunction();
</script>
No necesita devolver el nombre de una función ni nada por el estilo. En primer lugar, deje de escribir solicitudes AJAX a mano. Solo te lo estás poniendo difícil. Obtenga jQuery o uno de los otros marcos excelentes que existen.
En segundo lugar, comprenda que ya va a ejecutar el código JavaScript una vez que se reciba la respuesta de la llamada AJAX.
Aquí hay un ejemplo de lo que creo que estás haciendo con AJAX de jQuery
$.get(
'wait.php',
{},
function(returnedData) {
document.getElementById("txt").innerHTML = returnedData;
// Ok, here's where you can call another function
someOtherFunctionYouWantToCall();
// But unless you really need to, you don't have to
// We're already in the middle of a function execution
// right here, so you might as well put your code here
},
'text'
);
function someOtherFunctionYouWantToCall() {
// stuff
}
Ahora, si está decidido a enviar un nombre de función desde PHP a la llamada AJAX, también puede hacerlo.
$.get(
'wait.php',
{},
function(returnedData) {
// Assumes returnedData has a javascript function name
window[returnedData]();
},
'text'
);
* O JSON o XML, etc.