javascript onload页面收音机已检查

时间:2013-05-06 18:29:14

标签: javascript forms

我有一个函数可以根据检查的单选项启用或禁用表单元素。它工作正常。但是,我希望在页面加载时检查其中一个单选按钮,并且已经禁用或启用了相应的表单元素。

现在在页面加载时,我在表单上检查了一个单选按钮,但是当有更改时,javascript将会触发。

这是javascript

<script type="text/javascript">
        function customerChoice() {
            if (document.getElementById('radio1').checked) {
                document.getElementById('company').disabled = false;
                document.getElementById('onetime').disabled = true;
                document.getElementById('span1').style.color = '#cccccc';
                document.getElementById('span2').style.color = '#000000';
                }
            if (document.getElementById('radio2').checked) {
                document.getElementById('company').disabled = true;
                document.getElementById('onetime').disabled = false;
                document.getElementById('span1').style.color = '#000000';
                document.getElementById('span2').style.color = '#cccccc';
            }
        }
window.onload = customerChoice();

</script>

以下是两个单选按钮。

<input type="radio" name="type" id="radio1" value="C" onclick="customerChoice()" checked />Current Customer<br />

<input type="radio" name="type" id="radio2" value="O" onclick="customerChoice()" />One Time Customer<br />

需要帮助找出要更改的内容,以便在加载时激活javascript。谢谢。

2 个答案:

答案 0 :(得分:4)

尝试:

window.onload = customerChoice;

你拥有它的方式立即运行该函数,并将onload处理程序设置为结果(undefined,因为函数不返回任何内容),而不是函数本身。它不起作用,因为它在加载DOM之前运行。

答案 1 :(得分:0)

尝试将customerChoice()函数放在匿名函数中:

window.onload = function() {
  customerChoice();  
};