buenas,
hasta cierto punto esta bien. lo que te falla es que la variable mensaje -en la ventana secundaria- no contiene el texto del elemento. debes tener en cuenta que el navegador interpreta las cosas de forma lineal: de arriba abajo y de izquierda a derecha. por tanto, primero se interpreta el script y luego se crean los elementos. en este caso, el elemento no existe cuando se interpreta el script. el texto lo debes obtener justo cuando se presiona el botón. es decir, en el evento onclick. no puede ser incluso luego de haber creado el campo porque para ese momento el éste esta vacio. basicamente lo que debes hacer es poner la sentencia como argumento al invocar la función.
Código:
<element event="fn(/*sentencia aqui*/)">
por otro lado, notese que la sentencia esta un tanto mal, especificamente el
form no va.