All,
I have some code that uses multiple variables, objects and arrays. Somehow my object which was filled is now empty.
var items = [];
var countryCode = "";
var message = "";
var dataset = {};
var countryData = {};
countryData.fillKey = 'NEW';
function getItems(url) {
$.ajax({
url: _spPageContextInfo.webAbsoluteUrl + url,
type: "GET",
headers: {
"accept": "application/json;odata=verbose",
},
success: function (data) {
var items = data.d.results;
for(var i = 0; i < items.length;i++) {
countryCode = items[i].Country0.Column2;
message = countryData.fillKey;
dataset[countryCode] = message;
}
},
error: function (error) {
alert(JSON.stringify(error));
}
});
}
When I test dataset after this code it's empty. It should be something like:
dataset['UKR'] = countryData;
dataset['USA'] = countryData;
dataset['RUS'] = countryData;
Why doesn't this work?
Marco
My next code has to use the dataset:
var map = new Datamap({
element: document.getElementById('container'),
geographyConfig: {
hideAntarctica: true,
highlightFillColor: false,
popupOnHover: true,
highlightOnHover: false,
borderColor: '#000000',
borderWidth: 0.5
},
fills: {
'NEW': '#FF0000',
'OLD': '#FF7F7F',
defaultFill: '#FFFED9'
},
data: dataset
});
map.svg.call(d3.behavior.zoom().on("zoom", redraw));
function redraw() {
map.svg.selectAll("g").attr("transform", "translate(" + d3.event.translate + ")scale(" + d3.event.scale + ")");
}
});