Salve
ho questa funzione:
function plotMarkers1 () {
$.each( sites, function () {
if ( this.marker ) this.marker.setMap(null);
this.position = new google.maps.LatLng(this.lat, this.lng);
this.marker = new google.maps.Marker({
position: this.position,
map: map,
tit[code]
le: this.luogo
});
});
}[/code]
che se gli passo questa variabile (sites) , scritta in maniera manuale :
var sites = [
{name:'atto' , luogo:'Roma' ,indirizzo:'Via Veneto',lat:41.90608 ,lng:12.48942 ,data:'10 nov 201' ,context:'terr '}];
mi funziona correttamente e mi stampa il mio marker.
ma se gli passo
la funzione con tutte quelle informazioni contenute nella variabile tipo name, luogo etc. prese da database nel seguente modo:
downloadUrl("database.php", function(doc) {
var xmlDoc = xmlParse(doc);
var markers = xmlDoc.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
// obtain the attribues of each marker
var lat = parseFloat(markers[i].getAttribute("lat"));
var lng = parseFloat(markers[i].getAttribute("lng"));
var point = new google.maps.LatLng(lat,lng);
var name = markers[i].getAttribute("name");
var luogo = markers[i].getAttribute("luogo");
var indirizzo = markers[i].getAttribute("indirizzo");
var context = markers[i].getAttribute("context");
var data = markers[i].getAttribute("data");
//document.write(markers.length);
// create the marker
var j=["name:"+"'"+name+"'"+","+"luogo:"+"'"+luogo+"'"+","+"indirizzo:"+"'"+indirizzo+"'"+"," + "lat:"+lat+ ","+"lng:"+lng+"," +"data:" +"'"+data+"'"+","+"context:"+"'"+context+"'"];
var ja=[name+","+luogo+","+indirizzo+","+lat+","+lng+","+data+context];
//document.write(ja);
});
non mi funziona cioè non mi stampa tutti i marker, qui la variabile da passargli a function plotMarkers1 () è j.
come posso fare?