Hola,
A mi me trabaja tu ejemplo bien, que browser estas usando..
solo definí la variable que no definiste para que solo exista en el scope de tu función principal..
Y hice el path abstracto, eso por si esque el browser este asiendo el request como a otro dominio el cual no es permitido a menos que hagas Jsonp.
Código Javascript
:
Ver original<script>
function descargaArchivo() {
var peticion_http = null;
// Obtener la instancia del objeto XMLHttpRequest
if(window.XMLHttpRequest) {
peticion_http = new XMLHttpRequest();
}
else if(window.ActiveXObject) {
peticion_http = new ActiveXObject("Microsoft.XMLHTTP");
}
// Preparar la funcion de respuesta
peticion_http.onreadystatechange = muestraContenido;
// Realizar peticion HTTP
peticion_http.open('GET', 'MiAplicacionWeb/TextFiles/HolaMundo.txt', true);
peticion_http.send(null);
function muestraContenido() {
if(peticion_http.readyState == 4) {
if(peticion_http.status == 200) {
alert(peticion_http.responseText);
}
}
}
}
window.onload = descargaArchivo();
</script>
Para no tener la variable en el scope de tu función principal and no queres crear otra función podes usarla así también..
Código Javascript
:
Ver original<script>
function descargaArchivo() {
var peticion_http = null;
// Obtener la instancia del objeto XMLHttpRequest
if(window.XMLHttpRequest) {
peticion_http = new XMLHttpRequest();
}
else if(window.ActiveXObject) {
peticion_http = new ActiveXObject("Microsoft.XMLHTTP");
}
// Preparar la funcion de respuesta
peticion_http.onreadystatechange = function () {
if(this.readyState == 4) {
if(this.status == 200) {
alert(this.responseText);
}
}
};
// Realizar peticion HTTP
peticion_http.open('GET', 'MiAplicacionWeb/TextFiles/HolaMundo.txt', true);
peticion_http.send(null);
}
window.onload = descargaArchivo();
</script>
Asi no clogeas el scope de tu función principal y mas legible me parece..