簡體   English   中英

$ .getJSON不適用於IE11中同一域上的所有.json文件

[英]$.getJSON doesn't work for all .json files on same domain in IE11

我正在構建一個僅前端的Web應用程序,在某些時候我這樣做:

$.when(

// #1
$.getJSON(this.apiURL + 'operationareas?loc=' + this.location_name + '&oauth_consumer_key=' + this.apiKey + '&format=json&callback=?', function (data) {
    $.each(data.placemarks, function (idx, node) {
        self.mapDB['areas'][idx] = node;
    });
}),

// #2
$.getJSON('data/'+self.location + '.json', function (data) {
    $.each(data.zones, function (idx, node) {
        self.mapDB['zones'][idx] = node;
    });
}),

// #3
$.getJSON(this.apiURL + 'vehicles?loc=' + this.location_name + '&oauth_consumer_key=' + this.apiKey + '&format=json&callback=?', function (data) {
    $.each(data.placemarks, function (idx, node) {
        self.mapDB['cars'][idx] = node;
    });
})
).done(...)

我一次加載3個JSON文件,從一個API加載2個,從同一服務器加載一個。 在IE11以外的所有瀏覽器中都可以正常工作(沒有降低睾丸)。

在IE11中,#1和#3(API調用)可以正常工作。 本地請求(#2)然而返回一個:在“的SyntaxError無效字符” jqXHR -object和“parseError”作為textStatus 奇怪的是,這種情況只發生在我嘗試獲取的JSON的一半之內。 其余的工作正常。 所有文件均由jsonlint.com驗證。

任何想法可能導致這種行為?

此問題是4個月前報告給Jquery的錯誤。

Microsoft在Internet Explorer瀏覽器上可能對本地Ajax請求進行了錯誤的實現。

無論如何,現在它已由Jquery社區修復:)

該錯誤的完整詳細信息和修復程序在這里

快樂編碼:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM