jQuery-de delegasiýa
Eger siz JavaScript öwrenen bolsaňyz, ýaňy döredilen elementler üçin wakalary birikdirirken düşýän kynçylyklary, meselem, aradan aýyrmaga mümkinçilik berýän waka delegasiýasy temasy bilen ýüze çykdyňyz. Geliň, bunuň jQuery üçin nähili görünjekdigine seredeliň.
Aşakdaky HTML koduny alalyň:
<ul>
<li>tekst</li>
<li>tekst</li>
<li>tekst</li>
</ul>
Ona degişli CSS şeýle görünýär:
li {
width: 100px;
cursor: pointer;
}
Indi, on metodyny
ulanyp, click metodyny öňki sapaklarda edişimiz ýaly sanaw
elementine li däl-de, eýýäm sanawyň özüne ul
birikdireris. Şeýle hem, iňlis çäji üçin ikinji (mätäç däl) parametr hökmünde
'li' bereris. Näme çykanlygyna seredeliň:
$('ul').on('click', 'li', function() {
$(this).append('!');
});
ul berlen, onuň içinde birnäçe li bar.
ul-nyň aşagynda düwmäni ýasaň, oňa basylanynda
ul-nyň ahyryna täze li, tekst bilen
'punkt', goşulmaly. Her bir li-e basylanynda,
onuň ahyryna '!' goşulýan bolmaly. Bu täze goşulan
li elementleri üçin hem işlemeli. Meseleňizi delegasiýa
arkaly çözüň (ýagny waka ul-a baglanmaly).
Iki sütünli (ady we familiýasy) ulanyjylar tablisasy berlen.
Tablisanyň aşagynda forma ýasaň, onuň üsti bilen tablisada
täze ulanyjy goşup bolmaly. Islendik öýjüge basylanynda,
prompt penjiresi çykmaly, onuň üsti bilen öýjügiň
tekstini üýtgetmek mümkin bolmaly. Meseleňizi delegasiýa
arkaly çözüň (ýagny waka table-a baglanmaly).