Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   как вернуть значение кликнутого элемента (https://javascript.ru/forum/dom-window/38929-kak-vernut-znachenie-kliknutogo-ehlementa.html)

imediasun1 08.06.2013 17:21

как вернуть значение кликнутого элемента
 
Это все в цикле выводится
<div id="photo" >
<img src="<?=$row['photo_path'];?>">
<button name="entry" class="like" onclick="ajaxcl();">
<div id="entry-div">
</div><!--entry-div-->
<img style="margin: -4px 27px;"src="/img/like.png">
<input type="hidden" id="<?=$row['id'];?>" name="like_id" size="5" value="<?=$row['id'];?>">
</button>
</div><!--photo-->

Как вернуть значение в яваскрипте кликнутого <input type="hidden" находящегося внутри button name="entry" (клик производится по button name="entry"
var like_id = ????.value;

danik.js 08.06.2013 17:55

Цитата:

Сообщение от imediasun1
size="5"

Поле скрыто, какой еще блядь размер?
Цитата:

Сообщение от imediasun1
<input type="hidden"

Сомневаюсь что это стоит совать внутрь кнопке. Тоже самое и про div'ы.
Да и какой смысл в этом инпуте если у тебя формы нет? Проставляй id в data-атрибут.
<button data-id="<?= $row['id'] ?>" onclick="alert(this.getAttribute('data-id'))">Бла бла</button>

imediasun1 08.06.2013 18:05

а в скрипте как значение получить , так не работает
<button data-id="<?= $row['id'] ?>" name="entry" id="like_id" class="like" onclick="ajaxcl();"></button>

ajaxcl(){
function onclick() {
var like_id = $(this).getAttribute('data-id');
}
}

Так выводит просто object HTMLButtonElement, а надо значение его атрибута data-id

danik.js 08.06.2013 18:39

Через jQuery будет так: $(this).data('id');

imediasun1 08.06.2013 18:44

да нет мне надо через javascript?, как будет через javascript только в функции
пока что ничего не получается выводит просто object HTMLButtonElement, а надо значение его атрибута data-id
помоги пожалуйста. На jquery я этого добился так , как этого добится в javascript

$('.like').click(function() {
   
    alert($(this).data('id'));
	});

danik.js 08.06.2013 20:25

var handler = function() {
    alert( this.getAttribute('data-id') );
};
var elements = document.querySelectorAll('.like');
for (var i = 0, element; element = elements[i]; i++) {
    element.onclick = handler;
}


Часовой пояс GMT +3, время: 05:38.