I have a single input
as in follows:
<input type='text' class='txtwarna' name='txtwarna' value=''/>
And, this is HTML with many similar elements, say, cls
, as:
<div class="ct-a">
<ul class='wr'>
<li class='cls color1'>Kuning</li>
<li class='cls color2'>Putih</li>
<li class='cls color3'>Hijau</li>
<li class='cls color4'>Biru</li>
</ul>
</div>
<div class="ct-b">
<ul class='wr'>
<li class='cls color1'>Biru</li>
<li class='cls color2'>Hitam</li>
<li class='cls color3'>Putih</li>
<li class='cls color4'>Merah</li>
<li class='cls color5'>Coklat</li>
<li class='cls color6'>Abu-abu</li>
</ul>
</div>
What I tried - not working:
var strHtml = document.getElementsByClassName("cls");
var valInput = document.getElementsByClassName("txtwarna");
for (var i = 0; i < strHtml.length; i++) {
strHtml[i].addEventListener('click', function() {
valInput.value = strHtml.innerHTML;
});
}
Question: How to get each of the innerHTML string, say, biru, putih, kuning, etc when user clicks on it and insert the innerHTML string into single input value?
The value will be changed based on user's click.