js arraydaki değeri yenileme hakkında
benim böyle bi kodum var arraydeki testName leri foreach ile alıp li etiketiyle ekrana yazdırıyom
let testNames = [ {testName: 'test'}, {testName: 'test2'} ];
const container = document.getElementById('container');
let a;
testNames.forEach(function(x){
a = document.createElement('li')
a.classList.add('li-item')
a.innerHTML += `<p>${x.testName}</p>`;
container.appendChild(a)
})
daha sonra bu kod ile arraydeki değeri değiştiriyorum
testNames[0].testName = 'name changed';
arraydadaki değer değişiyor ama ekranda yazan değişmiyor, bunu yeni değer ile ekrana yazdırmak için ne yapmalıyım?
let testNames = [ {testName: 'test'}, {testName: 'test2'} ];
function createElement(testNames) {
const container = document.getElementById('container');
testNames.forEach(function(x){
let li;
li = document.createElement('li')
li.classList.add('li-item')
li.innerHTML += `<p>${x.testName}</p>`;
container.innerHTML(li)
})
}
testNames[0].testName = 'name changed';
createElement(testNames)
Ekrana yazdırmış olduğun değerleri tekrar güncellemen gerekiyor. Şimdi işlemi nasıl yaptırıyorsun bilmiyorum sadece dizi içindeki nesneyi değiştiriyorsan çalışmaz zaten.
Eğer tekrar foreach kullanıyorsan appendChild
kullandığın için üstüne ekleme yapar o yüzden innerHtml
kullanarak eski değerleri silmesini ve yeni değerleri yazmasını sağlarsın.
Uzman bir arkadaş farklı bir bakış açısı ile benden daha faydalı olabilir. Test edemediğim zaman kod hatası yapabailiyorum.