2012-11-02 3 views
1

내 테이블의 행을 반복하고 클래스 "경고"가있는 모든 행에 대해 ajax 요청을 수행하려고합니다. 그것은 지금까지 일하고 있습니다.동기식 Jquery ajax 요청이 요소를 업데이트하지 않습니다.

rows.each(function (i) { 
    $.ajax({ 
     type: 'POST', 
     url: 'ajax/Update/' + $(this).attr('rel'), 
     success: function(c) { 
      $('.table > tbody > tr.r[rel="' + c.Id +'"]').removeClass('warning').addClass('error'); 
     }, 
     dataType: "json", 
     async:false 
    }); 
});​ 

클래스 경고 제거 및 클래스 오류 추가는 주 기능이 끝나면 표시됩니다. 클래스를 설정하는 순간에 .each 루프의 페이지 내용을 업데이트하는 방법이 있습니까? 진행률 표시 줄을 업데이트하고 싶지만 함수가 끝나면 각 행에 20 %가 아닌 100 %로 점프합니다.

+0

정확히 무엇을 하려는지 이해하기가 어렵습니다. 어쩌면 당신은 AJAX 콜백 내에서 또 다른 .each 함수가 필요할 것입니다. – pmandell

답변

0

다른 계정으로 인해 죄송합니다. 내가 직장 내에서 사용하는 다른 하나는 내 계좌 정보가 없기 때문입니다.

jsFiddle에 대한 간단한 예를 만들었습니다. 테이블과 언론

http://jsfiddle.net/m94Ay/3/

$('#Save').click(function() { 
    var persons = $('.table > tbody.persons > tr.warning'); 
    if (persons.length == 0) { 
     alert("Choose some persons please."); 
     return; 
    } 
    var step = 100/persons.length; 
    var i; 
    persons.each(function (i) { 
     $(this).removeClass('warning').addClass('error'); 
     sleep(1000); 
    }); 
}); 

확인 서너 명 저장합니다. 클래스를 제거하고 매초마다 추가하는 대신 4 초 후에 모든 클래스가 함께 설정됩니다.

효과가 동일하게 유지되기 때문에 잠을 사용하여 아약스 게시물을 시뮬레이션했습니다.

관련 문제