我希望在点击任何按钮一次后禁用所有按钮。
jQuery('div').find('input[type="submit"]').each(function(){
jQuery(this).one('click', function(e) {
jQuery(this).css({
'background' : 'rgba(0, 0, 0, .15)',
'outline' : '0',
'-webkit-box-shadow' : 'inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05)',
'-moz-box-shadow' : 'inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05)',
'box-shadow' : 'inset 0 2px 4px rgba(0, 0, 0, .15), 0 1px 2px rgba(0, 0, 0, .05)'
}).unbind('click');
});
})
这是我目前的直播片段: http://jsfiddle.net/HyJvQ/3/
编辑:抱歉不要做清楚。
这些元素不仅仅出现两次..我想在点击其他按钮后禁用每对中的一个按钮。 更新小提琴: http://jsfiddle.net/283g7/
答案 0 :(得分:0)
$('#someIdorButton').on('click',function(){
$('input:submit').prop('disabled',true); // or $('input').attr('disabled','disabled');
});
答案 1 :(得分:0)
使用prop()
禁用按钮
jQuery('div').find('input[type="submit"]').prop('disabled',true);
试试这个
var buttons=jQuery('div').find('input[type="submit"]');
buttons.each(function () {
jQuery(this).one('click', function (e) {
jQuery(this).css({'border' : 'red 1px solid' }).unbind('click');
buttons.prop('disabled',true);
});
})
这将找到div
内的所有按钮并将其禁用
答案 2 :(得分:0)
这样的事情应该有效:
var $buttons = $('div input[type="submit"]');
$buttons.click(function (e) {
$(this).css({'border' : 'red 1px solid' });
$buttons.off('click');
})
答案 3 :(得分:0)
这就是我想要解决的问题..我通过使用.siblings()
来解决它$('body div').each(function() {
$(this).find('input[type="submit"]').each(function(){
$(this).one('click', function(e){
$(this).css({'border': 'red 1px solid'});
$(this).siblings().unbind('click');
})
})
})