J'ai vu les fils innombrables affalés sur Internet sur le code similaire suivant dans une requête AJAX renvoyant undefined:AJAX - Retour responseText
AJAX.onreadystatechange = function() {
if(AJAX.readyState == 4) {
if(AJAX.status == 200) {
var response = AJAX.responseText;
return response;
}
else {
window.alert('Error: ' + AJAX.status);
return false;
}
}
};
Je sais que je suis censé « faire quelque chose avec » responseText
comme l'écrivant au HTML. Le problème: Je n'ai pas ce luxe. Ce bit de code est destiné à être à l'intérieur d'une méthode générique pour exécuter des requêtes AJAX rapides de sorte que tout le code pour faire une requête AJAX ne doit pas être écrit encore et encore (~ 40 ×) avec une chance d'être mineur problème ici ou là qui casse l'application.
Ma méthode A pour explicitement return responseText
"ou sinon." Aucune écriture au format HTML. Comment est-ce que je ferais ceci? En outre, j'apprécierais un manque de prises pour JQuery.
Ce que je suis à la recherche:
function doAjax(param) {
// set up XmlHttpRequest
AJAX.onreadystatechange = function() {
if(AJAX.readyState == 4) {
if(AJAX.status == 200) {
var response = AJAX.responseText;
return response;
}
else {
window.alert('Error: ' + AJAX.status);
return false;
}
}
};
// send data
}
...
function doSpecificAjax() {
var param = array();
var result = doAjax(param);
// manipulate result
}
Pourriez-vous expliquer davantage ce que signifie "ne pas écrire en HTML"? –
Comme dans aucune écriture le résultat à un 'div' comme un moyen de stockage pour la valeur. –
Alors, pourriez-vous juste retourner "" si responseText n'a rien? –