2011-06-26 36 views
5

Có sự khác biệt giữa các thiết lập:Cài đặt async: false với jQuery?

$.ajax({ 
    type: "POST", 
    traditional: true, 
    url: '/adminTask/doAction', 
    async: false, <<<<<<<<<<<<<< HERE 
    data: parms, 
    dataType: "json", 
    success: function (data) { 
     $("#rdy_msg").text("Completed: " + id); 
    }, 
    error: function() { 
     var cdefg = data; 
    } 
}); 

và:

$.ajaxSetup({ 
    async: false 
}); 

Lý do tôi hỏi là tôi gần đây đã đăng một câu hỏi và một người nói cho tôi để sử dụng ajaxSetup và thiết lập async: false . Tuy nhiên tôi nghĩ rằng nó đã được thiết lập trong mã ở đầu trang.

Trả lời

0

Vâng, bạn nói đúng. Chỉ sử dụng ajaxSetup nếu bạn muốn tất cả cuộc gọi ajax trong tương lai được đặt mặc định thành nó.

0

ajaxSetup đặt cài đặt mặc định cho tất cả các cuộc gọi đến ajax. Bạn sẽ không phải lặp lại cài đặt đó mỗi khi bạn thực hiện cuộc gọi AJAX.

này được ghi chép lại trong $.ajaxSetup:

Tất cả Ajax sau đó kêu gọi sử dụng bất kỳ chức năng sẽ sử dụng các thiết lập mới

0

Sự khác biệt là sử dụng tất cả các cuộc gọi ajax tương lai $ .ajaxSetup hiệu ứng nơi như ví dụ đầu tiên bạn đăng chỉ xác định các cài đặt cho một yêu cầu đó.

http://api.jquery.com/jQuery.ajaxSetup/

3

Sự khác biệt là sử dụng ajaxSetup sẽ ảnh hưởng đến tất cả các cuộc gọi AJAX, trừ khi bạn ghi đè lên nó trong các thiết lập cụ thể cho cuộc gọi đó.

Khi bạn đặt thuộc tính async trong cài đặt cụ thể cho cuộc gọi đó, nó sẽ không bị ảnh hưởng bởi cài đặt ajaxSetup.

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