Hi all,
I have a small script that allows a user to toggle a line of radiobuttons. The script works perfectly in both Firefox and Opera, IE simply doesn't work.
The problem lies in the following statement:
There are actually two problems in this code. TheCode:function selectAll (dateIndicator, status) { form = document.forms['nmts']; for (var i=1; i<=50; i++) { var radioButtonId = "" + dateIndicator + i; if (form.elements [radioButtonId]) { form.elements[radioButtonId][status].checked = true; } } }
form.elements [radioButtonId] apparently doesn't work to get to the appropriate element in the elements array. This can be bypassed by an additional loop (aarrghhh) over all elements and a check for the elements name agains the radioButtonId.
However, when I get to the correct element, all radios with the same name, but a different value are seen as one...
Anyone and ideas on how to fix this problem?
Thanks.
Full code of the page (quite a bit, apologies for that):
Code:<html> <head> <title>Test</title> <script type="text/javascript"> <!-- function selectAll (dateIndicator, status) { form = document.forms['nmts']; for (var i=1; i<=50; i++) { var radioButtonId = "" + dateIndicator + i; if (form.elements [radioButtonId]) { form.elements[radioButtonId][status].checked = true; } } } //--> </script> </head> <body> <form name="nmts" method="post" action="/AllowForbid/updateNMTs.do"> <table border="1" cellpadding="5" cellspacing="0"> <tbody> <tr bgcolor="#cccccc"> <td>Date</td> <td> </td> <td>2</td><td>3</td> </tr> <tr bgcolor="#eeeeee"> <td bgcolor="#eeeeee" valign="top">2003-10-01</td> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <a href="javascript:selectAll('2003-10-01', 0)"><img src="test_files/agt_action_fail.png" alt="[no data]" border="0"></a> </td> </tr> <tr> <td> <a href="javascript:selectAll('2003-10-01', 1)"><img src="test_files/gg_connecting.png" alt="[unavailable]" border="0"></a> </td> </tr> <tr> <td> <a href="javascript:selectAll('2003-10-01', 2)"><img src="test_files/agt_action_success.png" alt="[ok]" border="0"></a> </td> </tr> </tbody></table> </td> <td> <input id="2003-10-012" name="2003-10-012" value="2" type="radio"><br><input id="2003-10-012" name="2003-10-012" value="3" type="radio"><br><input id="2003-10-012" name="2003-10-012" value="1" checked="checked" type="radio"> </td> <td> <input id="2003-10-013" name="2003-10-013" value="2" type="radio"><br><input id="2003-10-013" name="2003-10-013" value="3" type="radio"><br><input id="2003-10-013" name="2003-10-013" value="1" checked="checked" type="radio"> </td> </tr> <tr bgcolor="#ffffff"> <td bgcolor="#eeeeee" valign="top">2003-10-02</td> <td> <table border="0" cellpadding="0" cellspacing="0"> <tbody><tr> <td> <a href="javascript:selectAll('2003-10-02', 0)"><img src="test_files/agt_action_fail.png" alt="[no data]" border="0"></a> </td> </tr> <tr> <td> <a href="javascript:selectAll('2003-10-02', 1)"><img src="test_files/gg_connecting.png" alt="[unavailable]" border="0"></a> </td> </tr> <tr> <td> <a href="javascript:selectAll('2003-10-02', 2)"><img src="test_files/agt_action_success.png" alt="[ok]" border="0"></a> </td> </tr> </tbody></table> </td> <td> <input id="2003-10-022" name="2003-10-022" value="2" type="radio"><br><input id="2003-10-022" name="2003-10-022" value="3" type="radio"><br><input id="2003-10-022" name="2003-10-022" value="1" checked="checked" type="radio"> </td> <td> <input id="2003-10-023" name="2003-10-023" value="2" type="radio"><br><input id="2003-10-023" name="2003-10-023" value="3" type="radio"><br><input id="2003-10-023" name="2003-10-023" value="1" checked="checked" type="radio"> </td> </tr> </tbody></table> <input value="Submit" type="submit"> </form> </body></html>


Reply With Quote
Innovation Makes Life Better.


Bookmarks