检测在foreach,jquery中单击了哪个元素

时间:2013-06-20 11:33:03

标签: jquery

如果在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();

3 个答案:

答案 0 :(得分:2)

首先你不能为多个元素拥有相同的id .. id应该始终是唯一的(这就是为什么它被称为ID)....将所有内容更改为类并使用{{1}参考

试试这个

this

答案 1 :(得分:1)

尝试使用this之类,并使用可以有多个同名类的类。但id应该始终是唯一的

$('.my_btn').on('click',function(){
    var id = $(this).val(); 
    alert("Clicked on id :" + id);
});

答案 2 :(得分: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);
}

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