JSFiddle - React, Tailwind, and code Playground
by Hai Truong
HTML
<input type="text" id="result" placeholder="select" onFocus="openSelect();">
<div class="choice">
<input type="radio" name="group1" id="item1" value="Milk">
<label for="item1">Milk</label>
<br/>
<input type="radio" name="group1" id="item2" value="Butter">
<label for="item2">Butter</label>
<br/>
<input type="radio" name="group1" id="item3" value="Cheese">
<label for="item3">Cheese</label>
<br/>
<input type="radio" name="group1" id="item4" value="">
<label for="item3">Other (input type)</label>
<br/>
<input type="button" value="Done" onClick="closeSelect();">
</div>
<button class="btn">Sample Test</button>
CSS
.choice {
visibility:hidden;
height:auto;
width:170px;
background:#3CF;
}
JavaScript
function openSelect() {
var element = document.getElementsByClassName("choice");
for (var i=0; i<element.length; i++) {
element[i].style.visibility = 'visible';
}
}
function closeSelect() {
var element = document.getElementsByClassName("choice");
for (var i=0; i<element.length; i++) {
element[i].style.visibility = 'hidden';
}
var radios = document.getElementsByName("group1");
for (var i = 0; i < radios.length; i++) {
if (radios[i].checked) {
radioVar = (radios[i].value);
document.getElementById("result").value = radioVar;
break;
} else if (radios[3].checked) {
document.getElementById("result").input.value;
}
}
}