getElementById ('pcode') много элементов все пронумерованы - PullRequest
0 голосов
/ 29 декабря 2010

У меня есть документ, что при щелчке по ссылке в каждой строке этой таблицы отображается таблица результатов, в которой есть элемент TD с тегом SPAN, внутри которого находится идентификатор, начинающийся с 2 и увеличивающийся до 400 (т.е. id = "pcode2").

Мне нужно получить внутренние значения HTML этого и записать их в функцию Javascript ?, массив? строка? затем запятая для использования в другой функции Javascript для карты.

Данные предварительно отсортированы, и карта вызывается нажатием на ссылку, чтобы получить маршрут. ID диапазона никогда не превысит 400.

конечный пункт должен выглядеть следующим образом ..

var via = ("pcode2," "pcode3,", "pcode4");

Где pcode равен значению innerHTML SPAN, который является почтовым индексом.

Спасибо

Justin

1 Ответ

1 голос
/ 29 декабря 2010

Вы имеете в виду что-то вроде:

var values = [];

for(var i = 2; i <= 400; i++) {
    var element = document.getElementById('pcode' + i);
    if(element === null) {
        break;
    }
    values.push(element.innerHTML); // or element.innerHTML + ','
}

?

Если нет, вы должны уточнить наш вопрос.

Хотя вы не уверены, зачем вам запятая.Если вы хотите объединить значения позже, вы можете просто использовать join():

var str = values.join(',');

Пример:

var values = ['a','b','c'];
var str = values.join(',');
// gives "a,b,c"

Обновление: Из документация , я думаю, что вы должны сделать это (предполагая, что map доступен глобально):

function GetRoute() { 
    var from = document.getElementById('inpAddr').value; 
    var locations = [from]; 
    for(var i = 2; i <= 400; i++) { 
        var element = document.getElementById('pcode' + i); 
        if(element === null) { break; } 
        locations.push(element.innerHTML); 
    } 
    var options = new VERouteOptions(); 
    options.DrawRoute = true; 
    map.GetDirections(locations,options); 
}

Обратите внимание, что locations - это всего лишь один массив.В своем исходном коде вы создаете вложенный массив.И вам, кажется, не нужна запятая, просто набор мест.

...