2013-10-24 3 views
0

При загрузке набора полей ввода динамически с помощью предложения PHP For я хочу иметь флажок для каждой из строк, поэтому, если пользователь проверит его, все поля ввода для этой конкретной строки будут отключены.Динамический javascript для проверки того, отмечены ли флажки и отключены соответствующие поля ввода

Мне нужно динамически адаптировать javascript, чтобы он отключил каждую конкретную строку при каждом щелчке по соответствующему флажку, но я действительно не знаю, как ее достичь.

Вот мой код:

<?php 
for ($i=0;$i<5;$i++) 
    { 
    ?> 
    <tr> 
    <td><input id="includeItem<?=$i?>" type="checkbox" onchange="includeMore" name="item<?=$i?>"></td> 
    <td><input name="id<?=$i?> style="color:#888;" disabled="disabled"></td> 
    <td><input id="formItems<?=$i?>" class="datepicker" name="date<?=$i?>"></td> 
    <td><input id="formItems<?=$i?>" name="description<?=$i?>"></td> 
    <td><input id="formItems<?=$i?>" name="amount<?=$i?>"></td> 
    </tr> 
<?php } ?> 

Тогда мой браузер выглядит следующим образом:

<script> 
    function includeMore() { 
     var $check = $('#includeItem'); 
      if($('#includeItem').is(':checked')) 
       { 
       $('#formItems').attr.('disabled',''); 
       } 
      else { 
       $('#formItems').attr.('disabled','disabled'); 
       } 
     } 

</script> 
+0

Используйте 'this' указатель – Johan

+0

бы вы PLS уточнить? – samyb8

+0

Вы хотите отключить флажок щелкнутой строки при нажатии, правильно? – Johan

ответ

1

Сначала вам нужно добавить слушателя изменить событие

var $checkboxes = $('.class-for-the-input'); 

$checkboxes.on('change', function (evt) { 
    //... code 
}); 

Внутри обработчика функции , вам нужно получить родительскую строку, найти все элементы ввода, которые не равны установленному флажку, d отключить его на основе состояния флажка:

var $this = $(this), isChecked = this.checked, 
    $els = $this.parents('tr').find(':input').not($this); 

if (isChecked) { 
    $els.prop('disabled', 'disabled'); 
} else { 
    $els.removeProp('disabled'); 
} 
Смежные вопросы