我们有一个API生成的带有按钮的记录数组。
<td id=place-bets-1><button class="btn btn-primary my-2 my-sm-0" id="pick-team-5">Select</button></td>
当前,我们有一个静态的jquery调用字符串来禁用按下的jquery按钮,并希望使用数组查找来减少重复代码的丑陋性。
$("#pick-team-1").click(function () {
$("#pick-team-1").attr("disabled", true);
});
$("#pick-team-2").click(function () {
$("#pick-team-2").attr("disabled", true);
});
$("#pick-team-3").click(function () {
$("#pick-team-3").attr("disabled", true);
});
$("#pick-team-4").click(function () {
$("#pick-team-4").attr("disabled", true);
});
$("#pick-team-5").click(function () {
$("#pick-team-5").attr("disabled", true);
});
我想也许可以索引我的按钮,然后对按下的按钮数组进行.onclick扫描,并禁用每个单击的按钮。
即
for (var i = 0; i < buttonspressed; i++) {
if (buttonspressed = 3) {
maxoptionsselected();
} else {
pleaseselectmore();
}
}
答案 0 :(得分:1)
如果您所有的按钮都具有'btn'
类,则可以执行以下操作:
$(".btn").click(function () {
$(this).attr("disabled", true);
});
该按钮应绑定到所有按钮,并禁用单击的按钮。
答案 1 :(得分:0)
以下是一种方法。如果不是页面上的所有按钮,则可以在按钮上使用类来使选择器更加具体。更新范围仅显示查询所选按钮数量的一种方法。我不建议您在点击处理程序中使用它。
var mySpan = $("#numSelected");
$("button").click(function () {
$(this).attr("disabled", true);
mySpan.html($("button[disabled]").length);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table>
<tr>
<td><button class="btn btn-primary my-2 my-sm-0" id="pick-team-4">Select</button></td>
<td id=place-bets-1><button class="btn btn-primary my-2 my-sm-0" id="pick-team-5">Select</button></td>
</tr>
</table>
<span id="numSelected">0</span> selected