By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,435 Members | 2,891 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,435 IT Pros & Developers. It's quick & easy.

using javascript with radio button to disable a text box - does not work in IE

P: n/a
Hi,
I am trying to use javascript, div tag and radio button to
disable/enable a text box. It works fine
in netscape and firefox, but in IE, the text box is not disabled when
the user checks the radio button.

Note that I am using two div statements. Any other solutions also
wellcome.

<html>
<title>Test</title>

<head>
<script type="text/javascript">

function checkButton(rName) {

collection = document.all[rName];
if (collection[1].checked)
{
//document.myform.abutton.disabled = true;
document.getElementById("durfixed").style.display= "block";
document.getElementById("nodurfixed").style.displa y="none";
}
else
{
document.getElementById("durfixed").style.display= "none";
document.getElementById("nodurfixed").style.displa y="block";
}

}
</script>
</head>

<body >
<h2>Radio Button Check</h2>

<form name=myform>
<fieldset style="width:100px">
<legend>Toggle</legend>
<INPUT type=radio name=milestone value="Beta1"
onChange="checkButton('milestone')">Beta 1<br>
<INPUT type=radio name=milestone checked value="Beta2"
onChange="checkButton('milestone')">Beta 2<br>
</fieldset>

<br>

<div id="durfixed" style="display:block;" >
<input type=text name=ename value="">
</div>
<div id="nodurfixed" style="display:none;" >
<input type=text name=noename readonly value="" style="background:
#cccccc" >
</div>
</body>
</form>
</html>
Thanks for the help
Siva

Aug 29 '06 #1
Share this Question
Share on Google+
1 Reply


P: n/a
s.********@gmail.com wrote:
Hi,
I am trying to use javascript, div tag and radio button to
disable/enable a text box. It works fine
in netscape and firefox, but in IE, the text box is not disabled when
the user checks the radio button.
First, the solution: change your onchange to onclick.

Second, why. Your function is working in IE too. The difference is
tha in IE, the onchange event fires when the control loses focus (which
is as per the W3C spec) whereas other browsers fire a radio button's
onchange essentially as an onclick.

By using onclick, you'll get consistent behaviour across browsers.
Note however that using reload, it is possible to have the state of the
text input out of sync with the radio button selection in some (most?)
browsers. onload you should either run checkButton() or reset the form
to a known state.
--
Rob

Aug 29 '06 #2

This discussion thread is closed

Replies have been disabled for this discussion.