后退按钮后未禁用Javascript禁用的组件

时间:2009-10-14 14:25:32

标签: javascript internet-explorer back

当用户点击复选框时,我正在禁用单选按钮组,只使用原始javascript和禁用的属性。

我的功能很简单:

function toggleEnabled(elementId) {
  e = document.getElementById(elementId)
  e.disabled = !e.disabled;
}

并使用onClick事件调用它,如onClick =“toggleEnabled('radio_div')”

效果很好,但是如果用户点击回来,浏览器似乎记住了复选框的状态,但是将div中组件的状态重置为原来的状态。

这是在IE7中,我现在不想使用JS库,所以请不要提出相应的建议。

我做错了吗?是否有解决方案来获得预期的行为(记住复选框和后面的div的状态)?

1 个答案:

答案 0 :(得分:1)

您必须检查onload方法中的每个单选框值:

var selects = document.getElementByTagName("select");
for ( var i = 0 ; i < selects.length ; i ++ )
{
    //call your code if an option is checked
    if ( selects.options[selects.selectedIndex] )
    { 
        var selectedOption = selects.options[selects.selectedIndex];
        //now you got your option and can enable the div.
        toggleEnabled('radio_div');// <-- change this depending on selectedOption
    }
}
相关问题