Sto provando a utilizzare jQuery per chiamare alcune API personalizzate tramite Ajax/$.getJSON
.
Sto provando a passare un valore personalizzato nel metodo di callback Ajax, ma quel valore non viene passato e viene effettivamente sovrascritto. Questo è il mio codice:
var locationType = 3;
var url = 'blah blah blah' + '&locationType=' + locationType;
$("#loading_status").show();
$.getJSON(url, null, function(results, locationType) {
searchResults(results, locationType)
});
Il valore di locationType
prima che chiami l'URL utilizzando AJAX è 3
. Ma dopo che la chiamata ha restituito i dati correttamente, il valore per locationType
è ora success
. Questo perché il method signature of the callback è:
callback (dati, textStatus) Un funzione di callback che viene eseguita se la richiesta riesce.
Come posso passare 1 o più parametri a un metodo di richiamata?
variabile LocationType è variabile globale in modo non è necessario per dirla come parametro, in funzione di callback anonima quella variabile è libero ed è quindi ricerca in un ambiente circostante che in questo caso è ambiente globale. – jcubic
@jcubic - Non è una variabile * globale * (beh, potrebbe essere, ma probabilmente no), più precisamente è disponibile nel campo di applicazione di cui è preoccupato. –