Creo que ya voy viendo que pasa, quite el foreach y puse un simple for, aunque trabaja igual me imagino, tambien agregue unos alert para ir viendo:
Código Javascript
:
Ver originalfor(i=0;i<array_items.length;i++){
item = array_items[i];
if(item!=null || item!='')
item = item.trim();
divResult = 'container_'+item;
$('#container').append('<div id="'+divResult+'"></div>');
alert('{"item":'+item+'}');
$.getJSON('get_data.php', {"item":item}, function(data) {
})
.success(function(data) {
$('#wait').remove();
alert(item+' '+JSON.stringify(data));
})
.error(function(jqXHR, textStatus, errorThrown) {
$('#wait').remove();
$('#container').html(jqXHR.responseText);
});
}
bueno sigo con mi ejemplo de poner en el textarea 1, 2, 3 y pasa lo siguiente con los alerts:
alert1 = alert('{"item":'+item+'}'); //antes de enviar la data
alert2 = alert(item+' '+JSON.stringify(data)); //en el success del getjson al recibir la data
alert1 = {"item":1}
alert2 = 2 {"item":1}
al mismo tiempo del alert2 se vuelve a lazar el alert1
alert1 = {"item":2}
alert2 = 3 {"item":2}
alert1 = {"item":3}
alert2 = 3 {"item":3}
si observan el proceso ocurre tan rapido y de forma no secuencial que cuando pide el 1 ya se esta corriendo el 2 y se desfasa todo, y si le quito los alerts incluso pasa aun mas rapido que solo se muestra el ultimo.
entonces de alguna forma que desconozco, y espero su apoyo como siempre, es ver como hacer esperar por la respuesta y asignar la respuesta al div y luego hacer el siguiente, en pocas palabras, que actue de forma secuencial.
Alguien tiene alguna sugerencia? Gracias de antemano.