[AJAX][struts]récupération de 2 paramètres
Bonjour,
j'ai 2 champs à afficher dans ma page, je les remplis à partir de la sélection d'un utilisateur.
j'utilise ajax avec Struts.
si je met une alerte entre les 2 réponses j'ai bien mes champs remplis.
mais si je l'enleve, le dernier vient écraser le premier.
(normal 1 seule request)
comment faire?
voici le code:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
// Chargement par Ajax du libelle de la catégorie choisie et de l'Unité de moe
function chargeLibelleCategorie(categorie)
{
ajaxCallRemotePage('immobilisation.do?action=rechercheCategorie&selectedCategorie='+categorie,'rechercheCategorie');
ajaxCallRemotePage('immobilisation.do?action=rechercheTypeBienRattach&selectedCategorie='+categorie,'rechercheTypeBienRattach');
}
function ajaxCallRemotePage(url,source)
{
if (window.XMLHttpRequest) { // Non-IE browsers
req = new XMLHttpRequest();
if (source=='rechercheCategorie')
req.onreadystatechange = processStateChange;
else
if (source=='rechercheTypeBienRattach')
req.onreadystatechange = processStateChangeTypeBienRattach;
req.open("GET", url, true);
req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
req.send(null);
}
else if (window.ActiveXObject) { // IE
req = new ActiveXObject("Microsoft.XMLHTTP");
if (source=='rechercheCategorie')
req.onreadystatechange = processStateChange;
else
if (source=='rechercheTypeBienRattach')
req.onreadystatechange = processStateChangeTypeBienRattach;
req.open("GET", url, true);
req.setRequestHeader("If-Modified-Since", "Sat, 1 Jan 2000 00:00:00 GMT");
req.send();
}
else {
return; // Navigateur non compatible
}
}
function processStateChange()
{
if (req.readyState == 4) { // Complete
if (req.status == 200) { // OK response
document.forms('immobilisationForm').elements("libelleCategorie").value = req.responseText;
remplirUniteOeuvre();
} else {
alert("Erreur: " + req.statusText);
alert("statut: " + req.status);
}
}
}
function processStateChangeTypeBienRattach()
{
if (req.readyState == 4) { // Complete
if (req.status == 200) { // OK response
//document.forms('immobilisationForm').elements("libelleCategorie").value = req.responseText;
//remplirUniteOeuvre();
alert(req.responseText);
} else {
alert("Erreur: " + req.statusText);
alert("statut: " + req.status);
}
}
} |