Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Разобрать поля по части id JS

396
17 апреля 2010 года
SibBear
223 / / 27.07.2006
Имеется массив вида Array['1' => 10;'15' => 2; '78' => 3] (схематично)

есть соответствующее количество input полей с id='a_1', id='a_15', id='a_78'
нужно с помощью js пробежать по всем полям input и задать им value соответствующее Array. (тоесть id='a_78' value='3')
хелп...
не могу понять как выбрать все элементы у которых часть id равна 'a' а вторая равна элементу массива...

я в js дуб дубом...
244
17 апреля 2010 года
UAS
2.0K / / 19.07.2006
Сделать методом перебора. Я, кстати, в ядерной физике тоже дуб дубом.
Скрипт не проверял.
 
Код:
var arr = {1: 10, 15: 2, 78: 3};
for(var i in arr) {
    document.getElementById("a_"+i).value = arr;
}
396
17 апреля 2010 года
SibBear
223 / / 27.07.2006
спасибо, направление задано :)

ну вы же не собираете ядерную бомбу, а я сайт на аякс перевожу :)
253
18 апреля 2010 года
Proger_XP
1.5K / / 07.08.2004
Цитата: UAS

for(var i in arr)


Из личного (может чересчур субъективного) опыта не советую использовать for..in, у меня была с ним как-то неприятная возня из-за всем знакомого IE 6. Подробностей не помню, но после того случая использую только for ( ;;; ), чего и вам советую.

244
18 апреля 2010 года
UAS
2.0K / / 19.07.2006
Proger_XP, да вроде в ослике работал у меня всегда, хотя это же ослик =)
Я так-то уже давно использую $.each из jQuery, а под IE6 тем более уже завязал писать - нервов меньше, пользы больше + шестой осел и так отмирает уже.
396
18 апреля 2010 года
SibBear
223 / / 27.07.2006
первый вариант не прошел...
как можно использовать each?
 
Код:
var returnarr = {1: 10, 15: 2, 78: 3};
    $.each(returnarr, function(i, val) {
      $("#myid_" + i).text(val);
    });

что не так?
396
18 апреля 2010 года
SibBear
223 / / 27.07.2006
все, сам дурак, JSON забыл разобрать...
 
Код:
приходит returnarr = {1: 10, 15: 2, 78: 3}; далее

    var returnarr = eval('('+returnarr+')');
    $.each(returnarr, function(i, val) {
      $("#myid_" + i).text(val);
    });


Спасибо!
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог