Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JQuery] Dokonywanie akcji na dynamicznie utworzonych wierszach tabeli
Forum PHP.pl > Forum > Po stronie przeglądarki
KotWButach
Witam
Mam problem sad.gif i proszę was o pomoc.
Tworzę dynamicznie tabelę

  1. $(".jquery-add-row").click(function(event) {
  2. var countColumns = $("tr:last td").length;
  3. var string = '<tr>';
  4. string += '<td class="edit"><input type="checkbox" name="to-delete" value="ON" /><ul><li><a href="">odznacz wszystkie</a></li><li><a href="">skasuj zaznaczone</a></li></ul></td>';
  5. for (var i = 1; i < countColumns; i++) {
  6. string += '<td><input type="text" name="" value="" /></td>';
  7. }
  8.  
  9. string += '</tr>';
  10.  
  11. $("tbody").append(string);
  12.  
  13. return false;
  14.  
  15. });


mam jednak problem ponieważ nowo utworzone wiersze nie reagują na

  1. $(document).ready(function() {
  2. $("table tbody .edit").hover(function() {
  3. $(this).children('ul').css('display', 'block');
  4. }, function() {
  5. $(this).children('ul').css('display', 'none');
  6. });
  7. });


prosze o pomoc sad.gif.
nospor
No i prawidlowo. Niby czemu mają reagowac na cos, co bylo robione keidy ich jeszcze nie bylo?

ALbo zainteresuj się ON w jQuery, albo przy kazdym dodanym wierszem podpinaj mu na nowo co ma miec podpiete - dosc logiczne
KotWButach
Czy możesz mi jeszcze podpowiedzieć coś.
Zrobiłem tak ale dalej nie reaguje sad.gif

  1. $(".jquery-add-row").on( "click", function(event) { //dodawanie wiersza }


  1. $(document).on('ready',document,function() {
  2. $("table tbody .edit").hover(function() {
  3. $(this).children('ul').css('display', 'block');
  4. }, function() {
  5. $(this).children('ul').css('display', 'none');
  6. });
  7. });
Turson
on() ma być przy hoverze, a nie clicku dodawania wiersza
nospor
Pod ON miales podpiac to, co chcesz by sie robili na wierszu, czyli HOVER, a ty podpinasz wszystko inne tylko nnie hover...

ps: na stronie jQuery napisali, ze hover jest juz deprecated a w najnowszym wyrzucone totalnie. Zamiast tego uzywac nalezy mouseenter oraz mouseleave
KotWButach
Dziękuje wam za podpowiedzi smile.gif

  1. $('tbody').on('mouseenter', '.edit', function() {
  2. $(this).children('ul').css('display', 'block');
  3. });
  4.  
  5. $('tbody').on('mouseleave', '.edit', function() {
  6. $(this).children('ul').css('display', 'none');
  7. });
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.