2017-02-11 3 views
0

Моя проблема. Если вы выберете любой из этих флажков (получатель), следует отключить/включить другие строки с одинаковыми столбцами. Проблема №1: Невозможно отключить/включить флажки при первом выборе. Но работа над вторым щелчком, если вы выберете любой флажок. Проблема №2: Если я снова загружаю страницу, значение с флажком, которое было ранее отмечено, отображается как отключенное с отмеченным. Мне нужно отключить его с помощью unchecked.Невозможно отключить/включить флажки при первом выборе (CLICK) - JQuery

Ниже мой код:

функция onPayeeChkChange() {

jQuery(document).ready(function() { 

    $('#tblHousehold tr td#tdpayee input:checkbox').click(function(){ 

     var $inputs = $('#tblHousehold tr td#tdpayee input:checkbox')        
      if($(this).is(':checked')){ 
       $inputs.not(this).prop('disabled',true); // <-- disable all but checked one 
        }else{ 
         $inputs.prop('disabled',false); // <-- 
         } 

         }); 
          }); 

         } 

Не уверен, что я пропустил, Ваш быстрый ответ будет весьма признателен. благодаря...!!!

+1

Попробуйте использовать событие изменения вместо щелчка – shadymoses

+0

изменен OnChange вместо мыши ... но не помогает. –

+0

Работа с IE без Chrome на первом клике В моем коде есть что-то, что я пропустил, но я просто добавил ниже один оператор в IF и один оператор в другом месте ... см. Ниже, if ($ (this). is (': checked')) { $ inputs.not (this) .attr ('checked', false); $ inputs.not (this) .prop ('disabled', true); $ (this) .attr ('checked', true); } else { $ inputs.removeAttr ("disabled"); –

ответ

0

Вы хотите что-то ищите?

Примечание: если вы отключите этот флажок, вы не сможете повторно использовать его впоследствии. Если вы должны отключить его, просто добавьте .prop('disabled', true) в цикл.

$(function() { 
 
    $(':checkbox').click(function() { 
 
    \t var input = $(this), td = input.closest('td'), table = td.closest('table'); 
 
     // get index of the cell relative to its parent row 
 
     var i = td.index(); 
 
     // loop through each row 
 
     $('tr', table).each(function() { 
 
    \t  // uncheck the row's ith cell's checkbox 
 
    \t  $('td:eq(' + i + ') :checkbox', this).not(input).prop('checked', false); 
 
     }); 
 
    }) 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table> 
 
    <tr> 
 
    <td> 
 
     <input type="checkbox"> 
 
    </td> 
 
    <td><input type="checkbox"></td> 
 
    </tr> 
 
    <tr> 
 
    <td><input type="checkbox"></td> 
 
    <td><input type="checkbox"></td> 
 
    </tr> 
 
    <tr> 
 
    <td><input type="checkbox"></td> 
 
    <td><input type="checkbox"></td> 
 
    </tr> 
 
</table>

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