responseText contiene código de JavaScript y el código no se carga

La cuerda:

 

proviene de una solicitud XMLHttpRequest (), y es generada por php, y luego se escribe en una nueva ventana con javascipt, pero el script no está cargado. La ventana se abre en blanco, a pesar de que el código fuente contiene esa cadena.

¿Puede ser un problema de encoding?

La cadena es el resultado de ‘echo recaptcha_get_html ($ publickey)’, donde la función PHP es proporcionada por el script recaptcha.

La creación de tags de script mediante la configuración de .innerHTML generalmente no dará como resultado la ejecución de esas secuencias de comandos. Hay excepciones, como tener el atributo “aplazar” establecido en la etiqueta del script en los navegadores IE, pero en general probablemente no sea el camino a seguir. (No estoy seguro de lo que haría el atributo “async”. Pude ver que async = “true” resultaba en scripts creados de esta manera, pero no lo he probado).

Sin embargo, lo que funcionaría totalmente es crear Element (“script”), luego establecer .src en él y rellenarlo en algún lugar de su DOM. No solo lo cargará y ejecutará, sino que, en muchos casos, lo hará de forma asíncrona (frente a las tags de script normales que bloquean el rest de la carga de la página), que generalmente es mejor.