如何在单击一个按钮时禁用多个按钮

时间:2013-07-26 20:43:22

标签: javascript jquery button onclick

我目前有两个按钮,当点击其中任何一个按钮时,我都希望它们都被禁用。

目前正在使用:

<button type="button" class="disapprove-button" id="123abc" onclick="this.disabled=true;">
<img src="/downvote.png" alt="Downvote" /></button>

单击时禁用该按钮,但这允许另一个保持活动状态。

另一个几乎是完全相同的代码但是用于不同的功能:

<button type="button" class="approve-button" id="123abc" onclick="this.disabled=true;">
<img src="/upvote.png" alt="Upvote" /></button>

我知道他们用javascript / jquery做这个的方法,但我对这两个不太熟悉。

3 个答案:

答案 0 :(得分:0)

首先,你不能给不同的元素提供相同的id,Id`s是唯一的。你可以分配一个公共类,但不是普通的id。

WORKING FIDDLE

只是一个样本。

$('#upvote_id').on('click', function() {
     $('#down_vote_id').attr('disabled', 'disabled');
     $('#upvote_id').attr('disabled', 'disabled');
});

答案 1 :(得分:0)

1)为按钮设置不同的ID。

var buttons =  $("#id_button1, #id_button_2");//find buttons in DOM

buttons.click(function(){
  buttons.prop("disabled", true);//disable both buttons onclick event
})

http://jsfiddle.net/A3W8T/

回答评论: 是的,您可以使用任何选择器:

var buttons =  $(".disapprove-button, .approve-button");//find buttons in DOM

buttons.click(function(){
  buttons.prop("disabled", true);//disable both buttons onclick event
})

答案 2 :(得分:0)

我使用了类定位

var voteB =  $(".disapprove-button, .approve-button");

$(voteB).on('click', function() {
     $(voteB).attr('disabled', 'disabled');
});

工作示例http://jsfiddle.net/imemine29/VFt9E/