Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/72: Рейтинг темы: голосов - 72, средняя оценка - 4.96
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434

document.getElementById()

22.06.2010, 12:33. Показов 15064. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте, что-то у меня не выходит заменить <div id="block_1"></div>, проблема в том что
id блока у меня динамический
JavaScript
1
document.getElementById(block[0]).innerHTML = '<div id="'+block[0]+'">'+block[1]+'</div>';
как это можно реализовать?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
22.06.2010, 12:33
Ответы с готовыми решениями:

Определение браузера (document.getElementById && !document.all ? 1 : 0;)
Добрый день! На форуме (https://www.cyberforum.ru/javascript/thread366501.html) наткнулся на такую конструкцию: var ns6 =...

Javacript.document.getElementById
Привет всем!!!! Ребят помогите плс. есть javacript. echo &quot;&lt;a href='javascript:void();' onclick='del_ph()'&gt; &lt;img...

Document.getElementById не работает
Добрый день! document.getElementById не работает! в таблице несколько строк генерируются &lt;td&gt;&lt;input type=text...

19
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 12:38
вы хотите заменить содержымое?? что-то типа контента, или что???
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 12:46  [ТС]
просто после события, через ajax идёт обработка блока и возвращается результат с именем блока(id="block_1") который нужно заменить но id хранится в block[0](там может быть block_1,block_2,block_3 и т.д)
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 12:54
а естли попробывать как-то так:
JavaScript
1
document.getElementById(block[0]).innerHTML = '<div id="'+block[0]+'">'+document.getElementById(block[1])+'</div>';
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 13:01  [ТС]
на сколько я понимаю проблема document.getElementById(ТУТ!) просто когда указывать с явним именем (document.getElementById('block_1')) то всё работает прекрасно но мне нужно указать имя с block[0] или с переменной
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 13:05
JavaScript
1
2
3
var a=ocument.getElementById(block[0]).innerHTML;
//посмотрите как работает, примает ли то что надо
document.write(a);
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 13:15  [ТС]
нет не меняет
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 13:29
в смысле не меняет?? что выводит?? выводит то что нужно изменить?
JavaScript
1
2
3
var a=ocument.getElementById(block[0]);
//посмотрите как работает, примает ли то что надо
document.write(a);
елемент с каким id врезультате?
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 13:33  [ТС]
Цитата Сообщение от Nazz Посмотреть сообщение
елемент с каким id врезультате?
В результате обновляется страница которая пустая ,при повторном обновлении через браузер страница выводится нормально
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 13:48
я понял почему пустая))
JavaScript
1
document.write(a);
-выводит результат на новую страницу.
у вас ничего не работает потому, что document.getElementById(block[0]) не принимает никаких значений, я так понимаю...
а вы можете сказать после чего должен работать ваш скрипт(после нажатия на кнопке, или после чего), тоесть чтобы обойти ету проблему???

Добавлено через 8 минут
просто насколько я понимаю, вы хотите зделать так, чтобы id изменялся динамически, но я не уверен, что ето реально...

попробуйте немножко подробнее описать ситуацию, и что именно должно случится в результате выполнения скрипта...
так будет легче вам помочь.
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 13:55  [ТС]
Цитата Сообщение от Nazz Посмотреть сообщение
у вас ничего не работает потому, что document.getElementById(block[0]) не принимает никаких значений, я так понимаю...
Я тож так думаю и говорил об этом в #5 сообщении но пока не знаю как это исправить или обойти

Цитата Сообщение от Nazz Посмотреть сообщение
а вы можете сказать после чего должен работать ваш скрипт(после нажатия на кнопке, или после чего),
он запускается после собития onclick, вызывается функция которой передаются 2 значения 1- имя блока,2- значения и далее идёт обработка етих данных через ajax который возвращает результат это имя блока (так как етих блоков несколько на странице) и значения теперь этот блок нужно заметить по имени на новый вот и всё
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 14:00
а покажыте саму ссылку, тоесть onclick, как вы делаете...
попробуем ето обойти...
или ето пункты меню?
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 14:01  [ТС]
HTML5
1
<a href="#"  class="r3" onclick="R('3-2-9'); return false;">3</a>
0
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 14:03
JavaScript
1
2
3
4
5
function change(id, z, x)
{
block_id='block_'+id;
document.getElementById(block_id).innerHTML='<div id="'+block_id+'">'+block[1]+'</div>';
}
HTML5
1
<a href="#"  class="r3" onclick="change('3','2','9'); return false;">3</a>
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 14:09  [ТС]
Цитата Сообщение от Nazz Посмотреть сообщение
function change(id, z)
{
block_id='block_'+id;
document.getElementById(block_id).innerH TML='<div id="'+block_id+'">'+block[1]+'</div>';
}
у меня это не работает ,а у Вас?
ещё посмотри что из document.getElementsByName(name); будет
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
22.06.2010, 14:14
Смотрите консоль ошибок в браузере.
Используйте отладку alert'ами
JavaScript
1
2
3
4
var id=block[0];
alert(id);
var o=document.getElementById(id);
alert(o);
1
 Аватар для boong
154 / 124 / 11
Регистрация: 11.01.2010
Сообщений: 434
22.06.2010, 14:17  [ТС]
Цитата Сообщение от Vovan-VE Посмотреть сообщение
Используйте отладку alert'ами
я это уже делал много раз до того как написал сообщения на форуме,в id то что нужно хранится но почемуто не заменяет блок
но
JavaScript
1
alert(o);
не выводит буду сейчас смотреть почему
0
 Аватар для Vovan-VE
13210 / 6599 / 1041
Регистрация: 10.01.2008
Сообщений: 15,069
22.06.2010, 14:23
А консоль ошибок?
1
 Аватар для Nazz
898 / 729 / 80
Регистрация: 12.03.2009
Сообщений: 2,804
Записей в блоге: 2
22.06.2010, 14:30
вот так меняет содержімое нужного блока на названия блоков
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<html>
<head>
<script>
function change(id, z, x)
{
block_id='block_'+id;
document.getElementById(block_id).innerHTML='<div id="'+block_id+'">block_'+z+'</div>';
}
</script>
</head>
<body>
<a href="#"  class="r3" onclick="change('1','3','9'); return false;">1</a><br />
<a href="#"  class="r3" onclick="change('2','1','7'); return false;">2</a><br />
<a href="#"  class="r3" onclick="change('3','2','8'); return false;">3</a><br />
<div id="block_1">
ggggg
</div>
<div id="block_2">
jjjj
</div>
<div id="block_3">
hhhh
</div>
</body>
</html>
Добавлено через 2 минуты
вот так меняет содержімое блоков на следуючее
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<html>
<head>
<script>
function change(id, z, x)
{
block_id='block_'+id;
next='block_'+z;
a=document.getElementById(next).innerHTML;
document.getElementById(block_id).innerHTML='<div id="'+block_id+'">'+a+'</div>';
}
</script>
</head>
<body>
<a href="#"  class="r3" onclick="change('1','3','9'); return false;">1</a><br />
<a href="#"  class="r3" onclick="change('2','1','7'); return false;">2</a><br />
<a href="#"  class="r3" onclick="change('3','2','8'); return false;">3</a><br />
<div id="block_1">
ggggg
</div>
<div id="block_2">
jjjj
</div>
<div id="block_3">
hhhh
</div>
</body>
</html>
Добавлено через 1 минуту
вот так меняет их местами))
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<html>
<head>
<script>
function change(id, z, x)
{
block_id='block_'+id;
next='block_'+z;
a=document.getElementById(next).innerHTML;
b=document.getElementById(block_id).innerHTML;
document.getElementById(block_id).innerHTML='<div id="'+block_id+'">'+a+'</div>';
document.getElementById(next).innerHTML='<div id="'+next+'">'+b+'</div>';
}
</script>
</head>
<body>
<a href="#"  class="r3" onclick="change('1','3','9'); return false;">1</a><br />
<a href="#"  class="r3" onclick="change('2','1','7'); return false;">2</a><br />
<a href="#"  class="r3" onclick="change('3','2','8'); return false;">3</a><br />
<div id="block_1">
ggggg
</div>
<div id="block_2">
jjjj
</div>
<div id="block_3">
hhhh
</div>
</body>
</html>
2
gluzd
20.03.2013, 07:48
Понимаю что давно уже тема висит, но вдруг кто поиском наткнется как и я и получит неверную инфу. Вышеизложенное в корне некорректно, уважаемые. Используя .innerHTML Вы меняете СОДЕРЖИМОЕ элемента, это никак не влияет на атрибуты самого элемента. Таким образом приведенные JS конструкции не меняют id элемента, а вкладывают в него ещё один элемент с присвоенным id. Естественно это будет работать как попало или не работать вовсе, ибо будут дублироваться id и при дальнейших обращениях Вам может выдаваться совсем не тот элемент.

Добавлено через 16 минут
ID элемента меняем так:
JavaScript
1
document.getElementById(block[0]).id = block[1];
Если надо сменить и HTML и id элемента, то:
JavaScript
1
2
3
var edit_element = document.getElementById(block[0]);
edit_element.id = block[1];
edit_element.innerHTML = 'some_text';
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.03.2013, 07:48
Помогаю со студенческими работами здесь

GetElementById и document.write
Искал подобную тему на форуме и в поисковике. Было очень много про getElementById, но практически ничего про мой вопрос. Информация о...

CreateRange[n] == document.getElementById('id')
Здравствуйте, кто может знает можно ли сравнивать DOM - элементы из фрагмента, (например var sel = window.getSelection(); rng =...

Document.getElementById('name').ckeced не работает в IE
Всем доброго дня. Столкнулся с такой проблемой: в IE для checkbox не работает проверка document.getElementById('name').ckeced. Проблема...

document.getElementById трабл с сайтом
Доброго времени суток, гуру JavaScript!) У меня весьма банальная проблема.... Я скачал скрипт браузерной игры и не получается её...

document.getElementById объекта из Ajax
Всем добрый вечер. такая ситуация: есть файл 1.html: &lt;inpyt type='text' id='new'&gt; &lt;div id='test'&gt; &lt;/div&gt; В этот див...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru