2016-10-10 3 views
0

У меня есть столбец флажка в моей таблице данных, и я хочу скрыть кнопку, если ни один из отмеченных ящиков не щелкнул. [Включая разбивку на страницы]. ниже мой код, я использовал, чтобы получить значения при нажатии кнопки, пожалуйста совет,Как отключить кнопку, если не отмечены отмеченные флажки

$('#button').click(function() { 
    var id = ""; 
    var oTable = $("#userTable").dataTable(); 
    $(".groupCheckBox:checked", oTable.fnGetNodes()).each(function() { 
     if (id != "") { 
      id = id + "," + $(this).val(); 
     } else { 
      id = $(this).val(); 
     } 

    }); 
}); 

ответ

3

Вы можете добавить слушатель событий для всех ваших флажков. Всякий раз, когда что-то меняется, вы проверяете, все ли они не проверены => отключить кнопку, else => включить кнопку.

$(".groupCheckBox").on('change', function(){ 
    if($(".groupCheckBox:checked", oTable.fnGetNodes()).length == 0){ 
     $('#merge_button').prop('disabled', true); 
    }else{ 
     $('#merge_button').prop('disabled', false); 
    } 
}); 
+0

когда пользователь проверил 3 ящика и снял флажок с одного окна снова, спрячьтесь. как это исправить. –

+0

Или просто '$ ('# merge_button'). Prop ('disabled', $ (". GroupCheckBox: checked "). Length == 0)' –

+0

Вы имеете в виду отключен? У вас все ваши флажки класса «groupCheckBox»? Я не совсем уверен, работает ли селектор jQuery с классом: checked. Я бы использовал input [name = name_of_the_boxes]: отмечен вместо .groupCheckBox: отмечен. – Danmoreng

0

$('#merge_button') по умолчанию отключено и слушающий change события для всех $('.groupCheckBox') элементов .. В чеке обработчика событий, если какой-либо флажок, чтобы обновить свойство кнопки:

$('.groupCheckBox').on('change', function() { 
 
    $('#merge_button').prop('disabled', $('input.groupCheckBox:checkbox:checked').length === 0); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 
<input type="checkbox" class="groupCheckBox"> 
 

 
<hr> 
 

 
<button id="merge_button" disabled>Merge</button>

Смежные вопросы