我有以下AJAX功能:IE AJAX跨瀏覽器的問題
function ajaxDesignerBrandInfo()
{
var D = wrapFormValues('#designer-brand-form');
var recursiveEncoded = $.param(D);
/*
$.post("/api/designer_brand/", { data : recursiveEncoded }, function(data)
{
var results = $.parseJSON(data);
window.location = "/register/designer-product/";
});*/
$.ajax({ type: "POST",
url: "/api/designer_brand/",
data : { data : recursiveEncoded },
success: function(data) {
console.log(data);
setTimeout(function() {
window.location = "/register/designer-product/";
},0);
},
error: function (xhr, ajaxOptions, thrownError){
alert(xhr.status);
alert(thrownError); }
});
return false;
}
以及相應的形式
<form id="designer-brand-form" name="form" method="post" action="" onSubmit="ajaxDesignerBrandInfo(); return false;">
....
</form>
提交在Chrome,Safari和Firefox的偉大工程,動我
/註冊/ designer-product/
正確,但在IE9中,提交似乎爲
決不使它的服務器
清除表單和重定向回當前頁面我是上(在這種形式存在)。
我可以通過FireFox確認沒有javascript錯誤導致此失敗。有時它實際上有效,但我似乎無法總是以相同的方式重現此錯誤
有人請解釋WTF正在進行?
謝謝
我添加了SetTimeout,因爲我讀到它可以解決我的問題,但它沒有實際上解決問題 – josephmisiti