Transactions AJAX multiples et imbriquées, est-ce possible ?
Bonjour, je suis en train de coder un script de chargement de page via des template gérés par une base de donnée et j'ai un soucis car j'ai 2 .getJson qui se lancent en même temps et apparemment perdent leur petit.
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
| function Load_Page(nom_page,arg){
Load_Content_Page(nom_page,arg);
Load_Menu_Page(nom_page,arg);
}
function Load_Content_Page(nom_page,arg){
$.getJSON("get_content_page.php",{nom_page:nom_page},function(data){
NombreContent = data.jsonContentPageReturn.length
for(index=0; index<NombreContent; index++){
url_tmpl = data.jsonContentPageReturn[index][1];
Content = "Content" + data.jsonContentPageReturn[index][0];
$.ajax({
type: 'GET',
url:'load.php',
data:{template: url_tmpl, arg: arg},
success: function(html) {
$('#'+Content+'').empty();
$('#'+Content+'').append(html);
},
async: false
});
}
});
}
function Load_Menu_Page(nom_page,arg){
$.getJSON("get_menu_page.php",{nom_page:nom_page},function(data){
NombreMenu = data.jsonMenuPageReturn.length
for(index=0; index<NombreMenu; index++){
url_tmpl = data.jsonMenuPageReturn[index][1];
Menu = "Menu" + data.jsonMenuPageReturn[index][0];
$.ajax({
type: 'GET',
url:'load.php',
data:{template: url_tmpl, arg: arg},
success: function(html) {
$('#'+Menu+'').empty();
$('#'+Menu+'').append(html);
},
async: false
});
}
}); |
les résultats json:
{"jsonContentPageReturn":[["1","auth\/inscription.tpl.php"],["2","auth\/inscription.tpl.php"]]}
{"jsonMenuPageReturn":[["1","auth\/connexion.tpl.php"]]}
sachant que je devrais avoir 3 content et 5 menu à recharger.
Si qelqu'un sait comment corriger mon code ou connait une autre solution pour arriver au même résultat je suis preneur.
Merci d'avance.