单击功能以检索div

时间:2012-06-01 09:13:12

标签: javascript jquery

我如何检索找出哪个按钮点击来自哪个div。 基本上我有多个div

<div id="rare1">
<input type=button value="OK" id=btn>
</div>
<div id="rare2">
<input type=button value="OK" id=btn>
</div>
<div id="rare3">
<input type=button value="OK" id=btn>
</div>

我有一个功能

$("#btn").click(function(){
    $("#rare"+i+" #btn").attr("disabled", "true");
}

这样我可以禁用添加的最新按钮。 如何选择哪个按钮点击不同的div id并选择正确的btn来禁用?

很遗憾忘记添加我想要检索点击该按钮的div ID。

3 个答案:

答案 0 :(得分:3)

id每页每个元素必须是唯一的。目前,每个按钮都有btn,请使用类,例如class="btn",然后像这样修改代码:

<div id="rare1">
   <input type=button value="OK" class=btn>
</div>
<div id="rare2">
   <input type=button value="OK" class=btn>
</div>
<div id="rare3">
   <input type=button value="OK" class=btn>
</div>

<强> JS:

$(".btn").click(function(){
    $(this).prop("disabled", true);
}

要获取当前点击的按钮,请使用$(this),如上面的代码所示。


基于评论更新

要获取父div id,请使用:

$(this).parent().attr('id')

所以:

$(".btn").click(function(){
    var parentId = $(this).parent().attr('id');
    $(this).prop("disabled", true);
}

答案 1 :(得分:2)

ID是针对唯一按钮提供类

<div id="rare1">
<input type=button value="OK" class="btn">
</div>
<div id="rare2">
<input type=button value="OK" class="btn">
</div>
<div id="rare3">
<input type=button value="OK" class="btn">
</div>

$(".btn").click(function(){

    $(this).attr("disabled", "true");
});

答案 2 :(得分:1)

您可以使用'this'var。

选择点击的按钮

$("#btn").click(function(){ $(this).attr("disabled", "true"); }