Reputation: 43
I'm trying to do something a bit more complicated than this, but I broke it down and threw it in JSFIDDLE
and I still can't get it to work.
Any suggestions?
HTML:
<label for="service-type">Value</label>
<select id="service-type" onChange="hamburger()">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
<label for="receiptNo">No</label>
<input type="radio" name="receipt" id="receiptNo">
<label for="receiptYes">Yes</label>
<input type="radio" name="receipt" id="receiptYes">
Javascript:
var e = document.getElementById("service-type");
var ServiceUser = e.options[e.selectedIndex].text;
function hamburger() {
if (ServiceUser.value === "2") {
document.getElementById("receiptNo").disabled = true;
document.getElementById("receiptYes").checked = true;
}
}
Upvotes: 4
Views: 16282
Reputation: 9947
Send the details of function caller like this
<select id="service-type" onchange="hamburger(this)">
<option>0</option>
<option>1</option>
<option>2</option>
<option>3</option>
</select>
<input type="radio" name="receipt" id="receiptNo">
<input type="radio" name="receipt" id="receiptYes">
Finish it up with javascript
<script type="text/javascript">
function hamburger(sender) { // sender here has all details of dropdown
if (sender.value === "2") {
document.getElementById("receiptNo").disabled = true;
document.getElementById("receiptYes").checked = true;
}
}
</script>
Upvotes: 3