13
我有一個鏈接調度一個Ajax POST來執行一個操作。如果用戶尚未登錄,則操作方法將返回302重定向到登錄頁面。如果發生這種情況,我想捕獲重定向,以便我可以在lightbox中顯示登錄表單。如何防止jQuery ajax在發佈後重定向?
但是,似乎jQuery遵循重定向而不返回控制權或調用回調函數。在下面的代碼中,從不會調用302重定向警報,並且在調用dataFiler函數時,數據就是登錄頁面的內容。
我怎樣才能看到頁面發送了302重定向,並分支到不同的動作?
$.ajax(url,
{
data: postArguments,
type : "POST",
success: function (data) { alert(' success function'); },
statusCode:
{
302: function() { alert(' received redirect 302'); },
301: function() { alert(' received redirect 301'); }
},
dataFilter: function (data, type) { alert('got data ' + data); return data; }
});