Solved

how can i use 'onChange' event on ie (radio and select)

Posted on 2008-10-06
4
3,207 Views
Last Modified: 2013-12-08
Hi all,

I was trying to display items dinamically in my form according to selected options in some radios and dropdown lists (<input type="radio" and select-options).

The deal is that the code i'm using works fine for firefox and safari, but under ie it doesn't.

I have different divs tags that i populate according with selected values. I'm attaching some code to show you how i'm using this.

Thx a lot for the help

Regards,

Daniel Peralta
<body>
 

<script language="JavaScript" type="text/javascript">

    function check_value(divname,variable)

    {    

        document.getElementById(divname).innerHTML= document.getElementById(variable).innerHTML;

    }

	function getSelected(newdiv,sel)

	{	

  		var value = sel.options[sel.selectedIndex].value; 		

		check_value(newdiv,value);

	}

</script>
 

<div align="left">
 

	<br />

	<input type="radio" onchange="check_value('text','a')" value="op1" name="group1" /> op1<br />

	<input type="radio" onchange="check_value('text','b')" value="op2" name="group1" /> op2<br />

	<input type="radio" onchange="check_value('text','c')" value="op3" name="group1" /> op3<br />

	<hr />

	

	<div id="text"></div>
 

	<br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br /><br />
 

	<div id="a" visible="false">

		aaaaa<br />

	</div>
 

	<div id="b">

		bbbbb<br />

		<select id="opciones" name="opciones" onchange="getSelected('text1',this)">

			<option value="rojo">Rojo</option>

			<option value="verde">Verde</option>

			<option value="azul">Azul</option>

		</select>

		

		<div id="text1">

			otra cosa<br />

		</div>

	

	</div>
 

	<div id="c">

		ccccc<br />

	</div>

	

	<div id="rojo">

		escogio rojo<br />

	</div>

	

	<div id="verde">

		escogio verde<br />

	</div>

	

	<div id="azul">

		escogio azul<br />

	</div>

</div>

</body>

Open in new window

0
Comment
Question by:danielnp20
  • 2
  • 2
4 Comments
 
LVL 3

Accepted Solution

by:
wktang83 earned 500 total points
Comment Utility
You should use the 'onclick' event instead of 'onchange'.

According to w3schools.com (http://www.w3schools.com/jsref/jsref_onchange.asp), the onchange event is only supported by the following javascript objects: fileUpload, select, text, textarea.

Therefore, the onchange event will not work with the radio object.

Use the 'onclick' event instead. It should work with IE. I tested it on IE7 and it works well. (Not sure about IE6 though).

Please let me know if you have more questions.

Regards,
wktang83
0
 

Author Closing Comment

by:danielnp20
Comment Utility
wktang83 thx for the post, it works perfect also on ie 7 and i'll test it also in ie 6...

Finally do u know why i'm getting the message to activate 'active x' controls? and how can i disable it just to this page?

Thanks again

Regards,

Daniel Peralta
0
 
LVL 3

Expert Comment

by:wktang83
Comment Utility
This is because you are opening the html file locally (It is stored in your computer).

If the html file is loaded from the internet it won't prompt you for the activeX control thing.

Here are some more information about this problem I found online:

This security message only occurs if you are viewing web pages directly from your hard drive. For example,C:\myFiles\myFile.htm. (Ref. 178644)

As part of the XP SP2 Local Machine zone lockdown, Internet Explorer on XP SP2 blocks active content and scripting that tries to run in the Local Machine zone. Attackers have tried to take advantage of the Local Machine zone, so Microsoft has tightened the restrictions on what can run in this zone by default.

Source: http://kb.adobe.com/selfservice/viewContent.do?externalId=tn_19578
0
 

Author Comment

by:danielnp20
Comment Utility
thx again i'll read about it
0

Featured Post

Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Several part series to implement Internet Explorer 11 Enterprise Mode
This article explains how to prepare an HTML email signature template file containing dynamic placeholders for users' Azure AD data. Furthermore, it explains how to use this file to remotely set up a department-wide email signature policy in Office …
HTML5 has deprecated a few of the older ways of showing media as well as offering up a new way to create games and animations. Audio, video, and canvas are just a few of the adjustments made between XHTML and HTML5. As we learned in our last micr…
This Micro Tutorial will demonstrate how to add subdomains to your content reports. This can be very importing in having a site with multiple subdomains.

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now