Je passe une chaîne dans un champ masqué de la page, puis je la divise pour essayer d'obtenir un tableau d'éléments que je peux parcourir et ajouter plusieurs marqueurs sur une carte google. Si je code dur le tableau, cela fonctionne bien, mais si j'essaie de séparer la chaîne et d'utiliser le même code, cela ne fonctionne pas. Je suppose que la séparation de la chaîne crée un tableau de chaînes à la place des objets Array. Quand je divise la chaîne, le tableau se termine par "['Smith Company', 33.61678, -111.90017]" avec les guillemets autour de lui. Comment convertir ces éléments pour que je puisse les utiliser de la même manière que les valeurs codées en dur?Transformer les valeurs des tableaux de chaînes en objet tableau
J'ajoute les crochets, les guillemets simples et la barre verte dans un StringBuilder dans le code qui suit. Utiliser C# pour ça si ça va faire la différence. Je ne suis pas marié pour le faire de cette façon, mais toujours vert avec JavaScript alors c'était ma première solution. Ma chaîne initiale ressemble à ceci »
"['Jones Company', 26.16683, -98.23342]|['Smith Company', 33.61678, -111.90017]|['Bob Company', 29.70008, -98.03347]|['Blue Company', 37.71675, -122.21672]|['Red Company', 42.46692, -114.48342]"
Merci.
function initialize() {
var myOptions = {
zoom: 4,
center: new google.maps.LatLng(26.16683, -98.23342),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
//What I try to use when the hard coded is commented out
var myString = document.getElementById('hdnString').value;
var myItems = new Array();
myItems = myString.split("|");
//Hard coded items that I comment out when trying the above
var myItems = [
['Jones Company', 26.16683, -98.23342],
['Smith Company', 33.61678, -111.90017],
['Bob Company', 37.71675, -122.21672],
['Blue Company', 42.46692, -114.48342],
['Red Company', 36.58339, -121.8335]
];
// Add markers to the map
for (var i in myItems){
var myLatLng = new google.maps.LatLng(myItems[i][1], myItems[i][2]);
var marker = new google.maps.Marker({
position: myLatLng,
map: map,
title: myItems[i][0]
});
}
}
Donnez-nous la chaîne exacte vous passez dans le champ caché. – Triptych
J'ajoute les crochets, les guillemets simples et la barre verte dans un StringBuilder dans le code derrière. Utiliser C# pour ça si ça va faire la différence. Je ne suis pas marié pour le faire de cette façon, mais toujours vert avec JavaScript alors c'était ma première solution. ['Jones Company', 26.16683, -98.23342] | ['Smith Company', 33.61678, -111.90017] | ['Bob Company', 29.70008, -98.03347] | ['Blue Company', 37.71675, -122.21672] | ['Red Company', 42.46692, -114.48342] –