Salve volevo sapere: avendo un ciclo for è possibile che una variabile cosi
var nome, diventi
var nome1 = etc
var nome2 = etc
var nome3 = etc
cosi da essere una variabile sempre diversa?
mi serve per collegare i marker di una mappa
Salve volevo sapere: avendo un ciclo for è possibile che una variabile cosi
var nome, diventi
var nome1 = etc
var nome2 = etc
var nome3 = etc
cosi da essere una variabile sempre diversa?
mi serve per collegare i marker di una mappa
guardati la funzione eval
eval('var miaVariabile'+indice+' = etc');
come dovrei applicarlo in un caso del genere? non l'ho capito molto:
codice:for (i=0; i <= data.test.length; i++) { var image = new google.maps.MarkerImage( ''+data.test[i].marker+'', new google.maps.Size(32,37), new google.maps.Point(0,0), new google.maps.Point(16,35) ); var marker = new google.maps.Marker({ position: new google.maps.LatLng(data.test[i].latitude, data.test[i].longitude), animation: google.maps.Animation.DROP, map: map, title: data.test[i].nome, icon: image, shadow: shadow }); }
eval('var image'+i+' = new google.maps.MarkerImage(
'+data.test[i].marker+',
new google.maps.Size(32,37),
new google.maps.Point(0,0),
new google.maps.Point(16,35));
')
spero di non aver fatto casini con le virgolette
non mi funziona c'è da dire che poi per es var image1 deve essere richiamato in icon nel marker
es:
codice:for (i=0; i <= data.test.length; i++) { var image1 = new google.maps.MarkerImage( ''+data.test[i].marker+'', new google.maps.Size(32,37), new google.maps.Point(0,0), new google.maps.Point(16,35) ); var marker = new google.maps.Marker({ position: new google.maps.LatLng(data.test[i].latitude, data.test[i].longitude), animation: google.maps.Animation.DROP, map: map, title: data.test[i].nome, icon: image1, shadow: shadow }); }
il funzionamento base è questo:
var i=1;
eval('prova'+i+'="xxxxx"');
alert(prova1);
nel popup comparirà xxxxx
a partire da questo esempio dovresti riuscire a risolvere, fammi sapere, e ricordati le virgolette:eval vuole una stringa
boh non va
eval('image'+i+' = "new google.maps.MarkerImage(
'uploads/images.png',
new google.maps.Size(32,37),
new google.maps.Point(0,0),
new google.maps.Point(16,35));
"');
scusa ma ti restituisce errore? il codice che hai postato non lo posso provare dato che non ho data.test
aspetta un attimo sto facendo una prova
eval('image'+i+' = new google.maps.MarkerImage("uploads/images.png", new google.maps.Size(32,37), new google.maps.Point(0,0),new google.maps.Point(16,35))')
copia questo così com'è, metti tutto su una riga, se no se vuoi metterlo in più righe devi concatenare con i "+", questo me l'ero dimenticato prima, solo mi sembra strano che non ti ha restituito l'errore SyntaxError: unterminated string literal, ma tu come debugghi il javascript?