/ / Знайдіть ідентифікатор за класом у вкладеному div jquery - javascript, jquery, події, обробка подій, mouseevent

Знайдіть ідентифікатор за класом у вкладеному div jquery - javascript, jquery, події, обробка подій, mouseevent

У мене є такий html

<div class="click" id="1">
one
<div class="click" id="2">
two
<div class="click" id="3">
three
<div class="click" id="4">
four
<div class="click" id="5">
five
</div>
</div>
</div>
</div>

якщо у мене є клацання події при клацанні класом, є будь-який спосіб повернути ідентифікатор, на який я натискаю як от $ (". click"). click (функція () { попередження ("ідентифікатор, який натискаю")

}); Тому що я натискаю на три, я все одно отримую ідентифікатор один і два три.

Відповіді:

3 для відповіді № 1

Звичайно, просто зробіть це:

$(".click").click(function(e){ //e=event
alert($(this).attr("id")); // alert clicked element"s id
e.stopPropagation(); // stop event propagation so it doesnt propagate to click 1 and click 2
})

Оновити: Як згадував Фелікс Клінг, ви можете отримати доступ до de DOM безпосередньо та використовувати:

alert(this.id);

2 для відповіді № 2

Демо: http://jsfiddle.net/tzJUN/ використовуючи this.id http://jsfiddle.net/c65x9/

Якщо ви захочете: jQuery attr vs prop?

Припинення пропонування зупинить click Подія події перекидається на дерево DOM, не дозволяючи будь-яким батькам обробляти повідомлення про подію.

API:

Код

$(document).ready(function () {

$(".click").click(function (event) {
event.stopPropagation();
alert($(this).prop("id")); //<< --- or this.id

});

});

0 для відповіді № 3
$(".click").click(function(e){
$(this).attr("id");
alert($(this).attr("id"));//here you can see your clicked id

})

0 для відповіді № 4

Так. це просто

$(document).ready(function(){
$(".click").click(function(){
var ID=$(this).attr("id");
alert(ID);
//This ID varible will return ID of the Div Clicked
});
});