Estoy tratando de usar jQuery para llamar a algunas API personalizadas a través de Ajax/$.getJSON
.
Estoy tratando de pasar un valor personalizado en el método de devolución de llamada Ajax, pero ese valor no se transfiere y en realidad se sobrescribe. Este es mi código:
var locationType = 3;
var url = 'blah blah blah' + '&locationType=' + locationType;
$("#loading_status").show();
$.getJSON(url, null, function(results, locationType) {
searchResults(results, locationType)
});
El valor de locationType
antes de llamar a la URL usando AJAX es 3
. Pero después de que la llamada devuelve los datos correctamente, el valor de locationType
ahora es success
. Esto se debe a la method signature of the callback es:
de devolución de llamada (datos, textStatus) Un función de llamada que se ejecuta si la petición tiene éxito .
¿Cómo puedo pasar 1 o más parámetros a un método de devolución de llamada?
variables locationType es variable global, de modo que no es necesario ponerlo como parámetro, en función de devolución de llamada anonimus esa variable es gratis, así que es la búsqueda en el entorno circundante, que en este caso es entorno global. – jcubic
@jcubic - No es una variable * global * (bueno, podría ser, pero probablemente no), con mayor precisión está disponible en el alcance que le preocupa. –