Al grano tengo la siguiente pagina de prueba:
Código HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Archivo Principal</title>
<script type="text/javascript" src="ajax.js"></script>
<script type="text/javascript">
ejecutame = function() {
ajax("java.php","variable=hola");
}
validame = function() {
var h = document.getElementById("divpru").innerHTML;
alert(h);
}
</script>
</head>
<body>
<button onclick="ejecutame();">ejecutame</button>
<button onclick="validame();">validame</button>
</body>
</html>
estaba intentando hacer un truco con la respuesta de mi función ajax, al retornar el mismo dentro de una variable string. Sin embargo presente muchos inconvenientes «OJO no tengo problemas con la petición, ni la respuesta.
Solo deseo tratar dicha respuesta como un dato tipo string»
En fin la pregunta es el código anterior tal como esta funciona, la función ajax llamada desde el enlace crea un nuevo elemento en el DOM con el id "divpru" y la función validame asigna el contenido en el nuevo elemento a una variable. Ahora si modifico el código así:
Código HTML:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Archivo Principal</title>
<script type="text/javascript" src="ajax.js"></script>
<script type="text/javascript">
ejecutame = function() {
ajax("java.php","variable=hola");
var h = document.getElementById("divpru").innerHTML;
alert(h);
}
</script>
</head>
<body>
<button onclick="ejecutame();">ejecutame</button>
</body>
</html>
el resultado del alert es vacío. ¿Porque se presenta esta peculiaridad?