1

我如何检索找出哪个按钮单击来自哪个 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 的内容。

4

3 回答 3

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);
}
于 2012-06-01T09:14:58.513 回答
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");
});
于 2012-06-01T09:16:28.003 回答
1

您可以使用“this”变量选择单击的按钮。

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

于 2012-06-01T09:15:45.910 回答