I want to get a text box to appear when a radio button is selected yes . This is what my code looks like;
JavaScript
x
20
20
1
Care of Address? <br>
2
Yes<input type="radio" name="radio1" value="Yes" onClick="getResults(this)">
3
No<input type="radio" name="radio1" value="No" onclick="getResults(this)">
4
5
<div class="text"><p>Address Line 1 <input type="text" name="text1" id="text1" maxlength="30"></p></div>
6
<div class="text"><p>Address Line 2 <input type="text" name="text2" id="text2" maxlength="30"></p></div>
7
<div class="text"><p>Address Line 3 <input type="text" name="text3" id="text3" maxlength="30"></p></div>
8
<div class="text"><p>Address Line 4 <input type="text" name="text4" id="text4" maxlength="30"></p></div>
9
<div class="text"><p>Postcode <input type="text" name="text5" id="text5" maxlength="30"></p></div>
10
11
<script>
12
(document).ready(function() {
13
(".text").hide()
14
15
});
16
function getResults(elem) {
17
elem.checked && elem.value == "Yes" ? (".text").show() : (".text").hide();
18
};
19
</script>
20
Can anyone help me
Abi
Advertisement
Answer
Try this:
JavaScript
1
5
1
function ShowHideDiv() {
2
var chkYes = document.getElementById("chkYes");
3
var dvtext = document.getElementById("dvtext");
4
dvtext.style.display = chkYes.checked ? "block" : "none";
5
}
JavaScript
1
12
12
1
<label for="chkYes">
2
<input type="radio" id="chkYes" name="chk" onclick="ShowHideDiv()" />
3
Yes
4
</label>
5
<label for="chkNo">
6
<input type="radio" id="chkNo" name="chk" onclick="ShowHideDiv()" />
7
No
8
</label>
9
<div id="dvtext" style="display: none">
10
Text Box:
11
<input type="text" id="txtBox" />
12
</div>