2009-05-19 25 views
9

Tôi có một ứng dụng gửi nhiều yêu cầu Ajax cùng một lúc. Ban đầu tôi đã chạy vào các điều kiện chủng tộc cho đến khi tôi phát hiện ra jQuery Ajax Queue plugin, hoạt động tuyệt vời với jQuery 1.2, nhưng không thành công với jQuery 1.3. Có hai phiên bản plugin khác nhau; Tôi hiện đang sử dụng this one tương tự như lần đầu tiên nhưng chỉ bổ sung thêm một chút chức năng.Tôi làm cách nào để truy cập plugin Ajax Queue trong jQuery 1.3?

Dù sao, tôi đang sử dụng Firebug trên Firefox 3.0.10 và khi tôi chạy mã, tôi không nhận được bất kỳ lỗi rõ ràng nào, cuộc gọi chỉ không bao giờ được trả lại.

Tôi rõ ràng có thể tiếp tục sử dụng v1.2 nhưng thực sự muốn tìm hiểu lý do tại sao plugin này không thành công với bản phát hành mới nhất và những gì tôi có thể làm để làm cho nó hoạt động.

Xin cảm ơn trước.

+0

Bạn nhận được thông báo lỗi nào? Bạn đang kiểm tra lỗi ở đâu? – jgreep

Trả lời

14

Bạn sẽ có thể sử dụng hỗ trợ hàng đợi được tích hợp sẵn của jQuery nếu bạn sẵn sàng thực hiện một chút tác vụ.

// First Ajax request 
$(document).queue("ajaxRequests", function() { 
    $.ajax({ 
    // Stuff 
    success: function() { 
     $(document).dequeue("myName"); 
    }); 
    }); 
}); 

// Second Ajax request 
$(document).queue("ajaxRequests", function() { 
    $.ajax({ 
    // Stuff 
    success: function() { 
     $(document).dequeue("myName"); 
    }); 
    }); 
}); 

// Trigger the queue 
$(document).dequeue("ajaxRequests"); 

Tất nhiên, sẽ rất dễ dàng để bao bọc trong plugin.

+0

Tôi vừa phát hiện câu trả lời này qua Google. Điều này làm việc tuyệt vời cho trang web của tôi. Cảm ơn! –

+0

Đồng thời giữ một lá cờ với phần tử tài liệu có dữ liệu() giúp bạn theo dõi các yêu cầu được thực hiện và khi nào xếp hàng các yêu cầu – Kapil

+3

tại sao tên được chuyển đến dequeue "myName" khác với giá trị được sử dụng để xếp hàng chúng "ajaxRequests"? Không nên chúng giống nhau (tên của hàng đợi)? – Ericson578

0

ajaxManager plugin dựa trên Plugin xếp hàng Ajax nhưng linh hoạt hơn một chút và hoạt động với jQuery 1.3.2.

Các vấn đề liên quan