⊗jqEvtDe 100 of 113 menu

Delegatie in jQuery

Als je JavaScript hebt bestudeerd, ben je al de onderwerp gebeurtenisdelegatie tegengekomen, waarmee je bijvoorbeeld problemen kunt oplossen bij het toekennen van gebeurtenissen voor nieuwe elementen. Laten we eens kijken, hoe dit eruit zal zien voor jQuery.

Laten we de volgende HTML-code nemen:

<ul> <li>tekst</li> <li>tekst</li> <li>tekst</li> </ul>

CSS daarvoor ziet er als volgt uit:

li { width: 100px; cursor: pointer; }

Laten we nu, met behulp van de methode on, de methode click niet binden aan het lijstpunt li, zoals we in eerdere lessen deden, maar aan de lijst zelf ul. We geven ook een tweede (optionele) parameter 'li' door als selector voor afstammelingen. Laten we kijken wat we hebben gekregen:

$('ul').on('click', 'li', function() { $(this).append('!'); });

Gegeven een ul, daarin staan meerdere li. Onder de ul maak je een knop, waarop bij het indrukken aan het einde van de ul een nieuwe li wordt toegevoegd met de tekst 'punt'. Zorg ervoor dat bij een klik op elke li, aan het einde daarvan een '!' wordt toegevoegd. Dit moet ook werken voor nieuw toegevoegde li. Los de taak op met behulp van delegatie (dat wil zeggen, de gebeurtenis moet worden toegekend aan de ul).

Gegeven een tabel met gebruikers met twee kolommen: voornaam en achternaam. Onder de tabel maak je een formulier, waarmee een nieuwe gebruiker aan de tabel kan worden toegevoegd. Zorg ervoor dat bij een klik op een willekeurige cel een prompt verschijnt, waarmee de tekst van de cel kan worden gewijzigd. Los de taak op met behulp van delegatie (dat wil zeggen, de gebeurtenis moet worden toegekend aan de table).

Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren