mam sekcji div, że jestem dynamicznie podczas wypełniania przez jQuery AJAX:Dynamicznie dodać obsługi zdarzeń jQuery do dynamicznego HTML
$('#treeview').append(data.d);
Jeżeli dane jest kilka zagnieżdżonych div o różnych identyfikatorach.
Mam też trochę kodu jQuery sprawia, że DIV do katalogów, z +/- rozwinąć/zwinąć i dynamicznej populacji danych:
$('div.tree div:has(div)').addClass('parent'); // Requires jQuery 1.2!
$('div.tree div').click(function() {
var o = $(this);
o.children('div').toggle();
o.filter('.parent').toggleClass('expanded');
BindGridView($(this).attr('id'));
return false;
});
Problem jest kiedy wklej DIV do głównej katalogów div wszystko jest dobrze. Kiedy dynamicznie utworzę dokładnie ten sam tekst, tak, porównałem go, dynamiczna populacja danych nie działa; jednak widzę mój poprawny układ div na mojej stronie.
Zgaduję, że muszę dodać zdarzenie click & addClass kiedy robię
$ ('# TreeView') dołączyć (data.d.);
Ale nie mogę wymyślić, jak.
coś jak $ (# katalogów) .live ("click", function() {var o = $ (this); o.children ('div') przełączać();. o.filter (” .parent "). toggleClass (" rozwinięty "); BindGridView ($ (this) .attr ('id')); return false; }); – mike
i addClass? – mike
@mike: A co z 'addClass'? To nie ma wpływu, selektory wewnątrz funkcji będą działały poprawnie (szukam klasy macierzystej, zakładam). Wywołanie "na żywo" powinno zadziałać, ale z komentarzy jest trochę trudno powiedzieć. =) – casperOne