nefunkcnost js + jquery po odoslani formu pomocou nette.ajax

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
HiziTefery
Člen | 3
+
0
-

Zdravím,

po vytvorení nového užívateľa – zadaním prihlasovacích údajov do formy, jej následným odoslaním pomocou nette.ajax na server a vytvorením užívateľa v databaze a samotnom systéme, sa späť na klienta odosiela snippet s aktualizovanou tabuľkou vytvorených užívateľov.

{snippet wholeList}
	<table n:snippet="Users">
    	<tr>
        	<th class="head">Jméno</th>
            <th class="head">Role</th>
            <th class="head">Možnosti</th>
       </tr>
       {foreach $users as $user}
        	<tr n:snippet="item-$user[0]">
            	<td class="column">{$user[0]}</td>
                <td class="column">{$user[1]}</td>
                <td class= "column removeButton" ><button class="deleteButton" id={$user[0]}> smazat</button></td>
            </tr>
       {/foreach}
    </table>
{/snippet}

V 3. stĺpci tabuľky sa nachádza button pomocou ktorého sa mažú jednotlivý užívatelia.
To už prebieha pomocou jquery a ajaxu. Bohužiaľ po prijatí aktualizovaného snippetu už js vôbec nereaguje a ajax sa pomocou jquery nedá odoslať.

Neviete v čom by mohol byť problém?

Veľmi pekne ďakujem za odpoveď.

premek_k
Člen | 172
+
+1
-

Myslím, že registraci události (např. onClick) na tom buttonu musíš po překreslení toho snippetu udělat znovu – tzn. dej tu registraci do toho snippetu.

(Nebo taky ne, nejsem žádný znalec. V tom případě sorry)

CZechBoY
Člen | 3608
+
0
-

Nebo si udělej rozšíření nette.ajax.js a nabinduj ten handler onclick rovnou při úspěšným překreslení.
https://github.com/…ette.ajax.js#…

Machy8
Člen | 59
+
+2
-

Jestliže tě správně chápu, tak zachytáváš událost na dynamicky přidaném elementu. Myslím, že bude stačit zaměnit

$("#someButton").click(function(){});

za

$(document).on('click', "#someButton", function(){});

Na Stack Overflow se řešilo něco podobného. Dokumentace jQuery.