0

在foreach循环中,当id的形式所有元素都相同时,如何检测被点击的特定元素?

在 foreach 循环中,有一个输入:

echo " <input class='active' name='notification_id_' id='notification_id_' value='$notification_id''>$notification_id</input> <br />";

我使用的 Jquery 代码只检测到第一个值:

var id = $('#notification_id_').val();
4

3 回答 3

2

首先,多个元素不能有相同的 id。ID 应该始终是唯一的(这就是它被称为 ID 的原因)。将所有更改为类并使用this参考。

尝试这个:

$('.className').click(function(){
    alert($(this).val());
});
于 2013-06-20T11:34:53.273 回答
1

尝试使用this喜欢并使用类,您可以拥有多个具有相同名称的类。但 id 应该始终是唯一的

$('.my_btn').on('click',function(){
    var id = $(this).val(); 
    alert("Clicked on id :" + id);
});
于 2013-06-20T11:33:39.860 回答
0

1.简单的方法:

$('.className').click(function(){
alert($(this).val());
 });

2.按照你的方法:

echo " <input class='active' name='notification_id_' id='notification_id_' value='$notification_id' onclick=test(notification_id_);>$notification_id</input> <br />";

function test(var val)
{
  alert(val);
}

希望这会给你一些解决方案。

于 2013-06-20T11:43:33.297 回答