Узнать parent id
Добрый день.
Как мне узнать ИД родителя элемента? Пример такой: <div id="btn_answer_1"> <a href="#" id="answer_add"><img src="insRow.png" /></a> </div> <div id="btn_answer_2"> <a href="#" id="answer_add"><img src="insRow.png" /></a> </div> Как узнать, по чему щелкнули: по answer_add из btn_answer_1 или из btn_answer_2? |
this.parentNode.id; |
Спасибо, оно. А реально узнать родителя еще на уровень выше?
|
this.parentNode.parentNode.id; |
О как легко и просто. Спасибо огромное.
|
Еще ошибка вылезла.
Если я щелкну по первому answer_add, то все нормально сработает, а если по второму answer_add - то ничего не происходит. |
А какой результат вы хотите получить используя неуникальные идентификаторы?
|
Так а как мне сделать :cray:
|
Цитата:
|
<div id="btn_answer_1"> <a href="#" id="answer_add1" style="display: block;border: 1px solid; width: 100px; height: 20px;"></a> </div> <div id="btn_answer_2"> <a href="#" id="answer_add2" style="display: block;border: 1px solid; width: 100px; height: 20px;"></a> </div>
window.onload = function(){
document.getElementById('answer_add1').onclick = function(){
alert(this.parentNode.id);
};
document.getElementById('answer_add2').onclick = function(){
alert(this.parentNode.id);
};
};
|
Дело в том, что неизвестно, сколько будет этих answer_add, они создаются джаваскриптом онлайн, т.е. пользователь нажал кнопку - создалась новая. И так неизвестное количество.
|
Цитата:
|
Т.е. по class можно сколько угодно?
UPD. Не работает :-) Я могу генерировать любые имена новых элементов, но как мне уйти от генерирования одинакового кода для обработки? |
Цитата:
Один обработчик кликов на все элементы (по кр. мере, однотипные). Здесь написано, как внутри обработчика узнать, что именно ляпнули мышОм. Если Вы элементы генерируете так (и скорее всего в цикле):
var newEl = document.createElement('IMG')
newEl.id = "el_id"
...
, то попробуйте так:
//до начала цикла
var index = 0
...
//внутри цикла
var newEl = document.createElement('IMG')
newEl.id = "el_id" + (++index)
...
|
Проблему решил по-другому. Можно закрывать.
|
| Часовой пояс GMT +3, время: 12:46. |