Autor | Zpráva | ||
---|---|---|---|
Cpk Profil |
Pekny den prajem
Potreboval by som pomoc. Mam udalost Pridat zaznam ktora pomocou ajaxu prida data do db, a javascript povytvara elementy on the fly. Taktiez vytvori tlacitko <a href>zmaz </a> ktore sa nachadza <td id="120"><a href>zmaz</a></td>. To id identifikuje riadok, a je vytvarane tiez dynamicky. Vseko je zatial OK Mam dalsiu udalost po kliknuti na odkaz zmaz, ktore by mi malo zmazat riadok, len mi to na dynamicky vytvorene lenementy nefunguje, neviete kde moze byt problem ? Moze to byt tym, ze je niekde poruseny DOM ? function addNewRow(id){ var datum = new Date(); var h = datum.getHours(); var m = datum.getMinutes(); var s = datum.getSeconds(); var cas = "dnes o: "+ h + ":" + m + ":" + s; var countRows = $('#informations tr').size(); $('.n').removeClass("n"); createClasses(); //if((countRows % 2) == 0){ var el_tr = '<tr> </tr>'; var el_cislo = '<td>'+ countRows +'</td>'; var el_titulok = '<td>'+ $.tutilok +'</td>'; var el_poradie = '<td>'+ countRows +'</td>'; var el_aktivne = '<td>0</td>'; var el_cas = '<td>' + cas + '</td>'; var el_id = '<td>' + id + '</td>'; var el_zmazat = '<td></td>'; var delete_butt = '<a href="#del"></a>'; var img = '<img src="./imgs/icons/delete.png" alt="Odstranit ?"/>'; /* } else{ var vhtml = '<tr class="n" ><td class="cislo">' + countRows + '</td><td class="nazov">' + $.tutilok + '</td><td class="poradie">' + countRows + '</td><td class="aktivne">0</td><td class="datum">' + cas + '</td><td class="id">' + id + '</td><td class="del"><a href="#del" id="' + id + '"><img src="./imgs/icons/delete.png" alt="Odstranit ?"/></a></td></tr>'; } */ $('#informations tbody').append(el_tr); $('#informations tbody tr:last').addClass('n') $('#informations tbody .n').append(el_cislo); $('#informations tbody .n td:last').addClass("cislo"); $('#informations tbody .n').append(el_titulok); $('#informations tbody .n td:last').addClass("nazov"); $('#informations tbody .n').append(el_poradie); $('#informations tbody .n td:last').addClass("poradie"); $('#informations tbody .n').append(el_aktivne); $('#informations tbody .n td:last').addClass("aktivne"); $('#informations tbody .n').append(el_cas); $('#informations tbody .n td:last').addClass("datum"); $('#informations tbody .n').append(el_id); $('#informations tbody .n td:last').addClass("id"); $('#informations tbody .n').append(el_zmazat); $('#informations tbody .n td:last').addClass("del"); $('#informations tbody .n .del').attr('id', id); $('#' + id).append(delete_butt); $('#' + id + " a").append(img); $('.n').css("background-color", "#bcfbb3"); } // -------------- odstranenie stranky $(function() { $("table#informations").each(function() { $("td.del a", this).click(function() { var id = $(this).parent().attr("id"); var odpoved = confirm("Chcete skutocne zmazat stranku ID: "+ id +"?") if(odpoved != true){ return false; } $(this).parent().parent().fadeOut(1000); setTimeout(function() {$(this).parent().parent().remove();}, 1000); // var id = $(".id", this).parent().text(); var pocet = $('.id').size(); console.log(pocet); return false; }); }); }); Moderátor Chamurappi: Tvůj projev je špatně srozumitelný, piš prosím s diakritikou. Před otazník nepatří mezera.
|
||
Chamurappi Profil |
#2 · Zasláno: 7. 1. 2010, 13:39:04
Reaguji na Cpka:
„Moze to byt tym, ze je niekde poruseny DOM ?“ Porušený DOM? Co si pod tím pojmem představuješ? Příčinou problému nejspíš bude, že jQuery není CSS, selektory se nevyhodnocují průběžně. |
||
nightfish Profil |
#3 · Zasláno: 7. 1. 2010, 13:53:51
|
||
Cpk Profil |
#4 · Zasláno: 8. 1. 2010, 15:17:58 · Upravil/a: Cpk
Chamurappi:
Asi to bude tým. Máš nejaké riešenie, ako to rozchodiť ? Skusil som aj metódu live(), ale nepomohlo. // edit Nakoniec som to vyriešil tak, že do každej novovytvorenej položky vložil onClick metodu na zamazanie |
||
Časová prodleva: 5 dní
|
|||
Greeg Profil |
#5 · Zasláno: 13. 1. 2010, 19:17:24 · Upravil/a: Greeg
nieco podobne je aj plugin livequery
ten sleduje DOM a ked sa v nom objavi novy element vyhovujuci selectoru, bindne mu danu funkciu |
||
Časová prodleva: 15 let
|
0