2012-07-20 16 views
25

¿Cómo cargo el contenido de un archivo en una variable en lugar del DOM usando el método jQuery .load()?Cómo cargar el contenido de un archivo en una variable usando el método de carga jquery?

Por ejemplo,

$("#logList").load("logFile", function(response){ }); 

En lugar de cargar el archivo en el elemento #logList del DOM, me gustaría que se cargue en una variable.

+0

No utilice ' .load() 'luego, use otro método http://api.jquery.com/category/ajax/shorthand-methods/. –

+0

Esto debería haberse incluido con [su última pregunta] (http://stackoverflow.com/questions/11582920/how-to-check-if-file-is-empty-before-loading-using-jquery-load-method) – MrOBrian

Respuesta

28

load() es sólo un atajo para $.get que inserta atuomagically el contenido en un elemento DOM, por lo que debe hacer:

$.get("logFile", function(response) { 
    var logfile = response; 
}); 
15

Puede usar $.get() para iniciar una solicitud GET. En la devolución de llamada de éxito, se puede establecer el resultado a la variable:

var stuff; 
$.get('logFile', function (response) { 
    stuff = response; 
}); 

Tenga en cuenta que esta es una operación asíncrona . La función de devolución de llamada se ejecutará cuando la operación se complete, por lo que los comandos posteriores al $.get(...) se ejecutarán de antemano.

Es por eso que la siguiente registrará undefined:

var stuff; 
$.get('logFile', function (var) { 
    stuff = var; 
}); 
console.log(stuff); //undefined 
Cuestiones relacionadas