jQuery ajax сложная конструкция
От: Veroonya  
Дата: 25.12.12 15:00
Оценка:
При покидании окна ввода текста id=autoSign вызывается функция, которая подтягивает данные ajax-ом, связанные с введенным текстом, на базе этих данных выполняется функция, в которой снова вызывается ajax, для получения еще одного набора данных.
$("#autoSign").blur(function() {
    $.ajax({
        url: "${createLink(controller: 'car', action: 'resolveModel')}",
        type: 'Get',
        data: {autoSign: $("#autoSign").val()},
        success: function(data) {
          for (var i = 1; i <= data.сount1; i++) {
                for (var j=1; j<= data.count2; j++){
                var a = rndrTireModel(data.id, 'steer', i, j, 'left');
                ("#result1").val(a);
                a = rndrTireModel(data.id, 'steer', i, j, 'right'); 
                 ("#result2").val(a);
                a = rndrTireModel(data.id, 'lead', i, j, 'left');
                ("#result3").val(a);
                a = rndrTireModel(data.id, 'lead', i, j, 'right');
                 ("#result4").val(a);
             }
          }
       }
    });

function rndrTireModel(carId, shaft, shaftNum, wheel, side) {
     var result;
     $.ajax({
        url: "${createLink(controller: 'tireModel', action: 'resolveTireModel')}",
        type: 'Get',
        data: {car: carId, shaft: shaft, shaftNum: shaftNum, wheel: wheel, side: side},
        success: function(text) {
          result = text;
        }
     });
     alert (result); 
     return result;
}
 });


При добавлении alert (result); данные появляются в итоге там где нужно, при отсутвии alert данные не появляются.
Подумываю, что это как то связано с тем, что когда выполняется второй ajax первый уже завершил свое выполнение.

Подскажите, как реализовать?


25.12.12 19:56: Перенесено модератором из 'Java' — Blazkowicz
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.