Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][jQuery]input checkbox odblokowanie pól do edycji
Forum PHP.pl > Forum > Przedszkole
@rtur
Mam formularz:
  1. <tr><td class="col1"><input type "checkbox" name="no[]"></td><td class="col3"><input type="text" name="imie[]" disabled></td><td class="col3"><input type="text" name="nazwisko[]" disabled></td></tr>
  2. <tr><td class="col1"><input type "checkbox" name="no[]"></td><td class="col3"><input type="text" name="imie[]" disabled></td><td class="col3"><input type="text" name="nazwisko[]" disabled></td></tr>
  3. <tr><td class="col1"><input type "checkbox" name="no[]"></td><td class="col3"><input type="text" name="imie[]" disabled></td><td class="col3"><input type="text" name="nazwisko[]" disabled></td></tr>
  4. <tr><td class="col1"><input type "checkbox" name="no[]"></td><td class="col3"><input type="text" name="imie[]" disabled></td><td class="col3"><input type="text" name="nazwisko[]" disabled></td></tr>
  5. </form>


Ilość wierszy jest dynamiczna, w formularzu mogę zaznaczyć wiele pól typu checkbox. Jak w jQuery odblokować wszystkie pola input z wiersza w którym zaznaczono checbox? W sumie z samym zdjęciem atrybutu disabled z pól bym sobie może i poradził tylko nie wiem jak wykryć zaznaczenie checkboxa i wszystkie pozostałe pola tylko z jednego wiersza....
trueblue
  1. if(inputChk.prop('checked'))
  2. inputChk.parent().parent().find('input[type="text"]').removeProperty('disabled');
@rtur
dziękuje, ale chyba coś robię nie tak bo nie działa, gdzie jest problem?
  1. $('input.alo').change(function(){
  2. var inputChk =$(this);
  3. if(inputChk.prop('checked'))
  4. inputChk.parent().parent().find('input[type="text"]').removeProperty('disabled');
  5. })

  1. <tr>
  2. <td class="checkbox"><input type="checkbox" name="alp[]" class="alo" value="139"></td>
  3. <td class="song-lp"><input type="text" name="lp[]" class="" disabled></td>
  4. <td class="song-time"><input type="text" name="time[]" value="" class="" placeholder="00:00:00" disabled></td>
  5. <td class="album-artist"><div class="title">Faith</div><div class="artist">George Michael</div></td>
  6. </tr>
  7. <tr>
  8. <td class="checkbox"><input type="checkbox" name="alp[]" class="alo" value="135"></td>
  9. <td class="song-lp"><input type="text" name="lp[]" class="" disabled></td>
  10. <td class="song-time"><input type="text" name="time[]" value="" class="" placeholder="00:00:00" disabled></td>
  11. <td class="album-artist"><div class="title">Symphonica</div><div class="artist">George Michael</div></td>
  12. </tr>
trueblue
click nie change.
@rtur
dałem .click i bez zmian, pojawia się błąd Uncaught TypeError: undefined is not a function
http://jsfiddle.net/4ond2ogm/
trueblue
Mój błąd.
.removeProp('disabled');

I dodaj znacznik table.
@rtur
Popróbowałem trochę i zadziałało tak
  1. $('input.alo').click(function(){
  2. var inputChk =$(this);
  3. if(inputChk.prop('checked'))
  4. inputChk.parent().parent().find('input[type="text"]').prop("disabled", false);
  5. else inputChk.parent().parent().find('input[type="text"]').prop("disabled", true);
  6. });
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.