Od kilku dobrych godzin zmagam się z przykładem prostego zastosowania funkcji dataFilter
w ajax()
. Cały czas albo pojawiają się błędy odczytu pliku lub nie wyświetla nic. Wiem, że najczęściej używana jest funkcja success lub complete aczkolwiek w sieci też nie ma zbyt wiele pomocy pod kątem dataFilter
. Na razie mam coś takiego :
{"8":"vacation","7":"birthday","5":"summer","4":"2013","3":"2014","6":"winter","2":"2015","1":"2016"}
var database = 'retData.json';
$(document).ready(function(){
$("#buttonWithAction").click(function(){
var receivedData = $.ajax(database, {
contentType : 'application/json',
dataType : 'json',
timeout : 500,
'dataFilter': function(database, json) {
data = [];
$.map(database, function(value, key) {
console.log('indx=i' + key + ', value=' + value);
node = {
'id': 'i' + key,
'text': value,
'icon': '/',
'data': value, //'metadata' : value,
'state': {
'opened': false
},
'children': true
}
data.push(node);
console.log(data);
});
}
});
});
});
Gdyby ktoś mógłby podpowiedzieć gdzie leży błąd. Może to kwestia złego przetwarzania pliku. Może błędne użycie funkcji map()
.