function pomogiteDuraku()
Кликаем на элемент "test" и его значение возвращается в <div id="test2"></div>. Помогите, как это сделать?
<html> <head> <title>Test</title> </head> <body> <div id="test">Str 1</div> <div id="test">Str 2</div> <div id="test">Str 3</div> // ... <div id="test">Str n-1</div> <div id="test2"></div> </body> </html> var testnew=document.getElementById('test').onclick=pomogiteDuraku(); function pomogiteDuraku(){ getElementById('test2').innerHTML(this(test)); } |
arra = document.getElementsByTagName('div');//getElementById возвращает тока первый элемент =>не подходит for(var i=0;i<arra.length;i++) if (arra[i].id=='test') arra[i].onclick=pomogiteDuraku;//без скобок function pomogiteDuraku(){ *!*document*/!*.getElementById('test2').innerHTML = this.innerHTML; } |
Блин, пропустил document.
Спасибо огромное за ответ, только оно в вашем варианте функция возвращает только значение первого элемента, а она должна возвращать значение любого элемента. |
id должен быть уникален. нельзя использовать один id у нескольких элементов на странице.
|
Как тогда быть, если у меня сотня (или даже больше) элементов? Для каждого создавать в скрипте переменную, которая будет реагировать на элемент, или можно как-то с индексами? Такой вариант слишком длинный.
var test1{ name="Имя 1"; surname="Фамилия 1"; } //... var testn-1{ name="Имя n-1"; surname="Фамилия n-1"; } test1.onclick=document.getElementById("testname").innerHTML=test1.name && document.getElementById("testsurname").innerHTML=test1.surname; testn-1.onclick=document.getElementById("testname").innerHTML=testn-1.name && document.getElementById("testsurname").innerHTML=testn-1.surname; <div id="test1">Test 1</div> <div id="testn-1">Test n-1</div> <div id="testname"></div> <div id="testsurname"></div> |
1. классы (getElementsByClassName)
2. атрибуты data-id (getElementsByTagName('div') +getAttribute('data-id') ) |
Часовой пояс GMT +3, время: 07:20. |