JavaScript'те элементтер тобунда редакциялоо
Эми бизде бир эмес, бир нече абзац бар болсун:
<p>text1</p>
<p>text2</p>
<p>text3</p>
Кайсы болбосун абзацга чыкылдаганда, анда редакциялоо үчүн инпут пайда болушун кылалы.
Чынында, мындай маселө биз үчүн татаал эмес, анткени дээрлик бардык код бизге мурунку сабакта алынган.
Биздин маселөбүздү чечүү үчүн, жөн гана абзацтар бойлон цикл иштетели жана циклде мурунку сабактын кодун колдонолу (бул кодту өзгөртүүнү да керек кылбайт):
let elems = document.querySelectorAll('p');
for (let elem of elems) {
elem.addEventListener('click', function func() {
let input = document.createElement('input');
input.value = elem.textContent;
elem.textContent = '';
elem.appendChild(input);
input.addEventListener('blur', function() {
elem.textContent = this.value;
elem.addEventListener('click', func);
});
elem.removeEventListener('click', func);
});
}
ul теги берилген. Кайсы болбосун
li'га чыкылдаганда, анда инпут пайда болуп,
анын жардамы менен ушул li'нын текстин
редакциялоого мүмкүн болушун кылыңыз.
HTML таблицасы берилген. Кайсы болбосун уячага чыкылдаганда, анда ушул уячанын текстин редакциялоо үчүн инпут пайда болушун кылыңыз.