2016-09-22 55 views
-1

我該如何編寫它並讓它在IE中工作?IE瀏覽器ajax解析/ .includes()&.indexOf

var tEvents = eventsJSON.response.Events.filter(function (val, index, array) { 
     return val.participating_region.includes(varRegion); 
}); 
totalEvents = tEvents.length; 

我知道這個問題是.includes(),只是不知道如何寫這個使用.indexOf()

全碼:

var varRegion = $('body').data('region'); 

    var eventsJSON = null; 
    var totalEvents; 
    var virtualEvents; 

    $.ajax({ 
    'url': '/services/getAllEvents', 
    'dataType': 'json', 
    'success': function (data) { 
    eventsJSON = data; 
    parseJSONevents(); 
    } 
    }); 

    function parseJSONevents() { 

    var tEvents = eventsJSON.response.Events.filter(function (val, index, array) { 
    return val.participating_region.includes(varRegion); 
    }); 
    totalEvents = tEvents.length; 

    $('.in-person-events').text(totalEvents); 

    return eventsJSON; 

    }; 

回答

1

return val.participating_region.indexOf(varRegion) > -1;

雖然它很難說沒有看到所有相關的代碼和JSON響應結構。

+0

謝謝。添加完整的代碼。我需要返回一個數字,它是匹配對象的總數。 –

+0

你嘗試過'indexOf(x)> -1'嗎? –

+0

那麼我做了,現在它在IE中工作。但僅限於所有瀏覽器中我的數字的一半。所以它適用於這個腳本,但第二個腳本有不同的ajax調用和不同的JSON文件 - 但其他相同的代碼只生成一個或零。 –