Onclick单选按钮禁用另一个单选按钮

时间:2013-12-16 01:53:21

标签: javascript html radio-button

我有两组单选按钮。 Insurance TypeReport Type

的单选按钮

保险类型代码:

<input type="radio" class="p27" name="ins_type" value="loan"/> Loan Insurance
<input type="radio" class="p27" name="ins_type" value="benefit"/> Benefit Insurance 

和报告类型的代码:

<input type="radio" class="p27" name="rep_type" value="normal_rep"/> Normal Listing
<input type="radio" class="p27" name="rep_type" value="loan_coverage"/> Loan Coverage
<input type="radio" class="p27" name="rep_type" value="premium_coverage"/> Premium Coverage 

我想要实现的是当我点击保险类型组中的福利保险单选按钮时,应禁用报告类型组中的贷款承保范围和高级承保范围单选按钮。

我不是一个JavaScript人,所以任何帮助对我都非常有用。

2 个答案:

答案 0 :(得分:3)

首先,为福利,贷款保险和保费覆盖(例如我的代码的福利,贷款和保费)的输入添加ID。然后使用以下javascript:

document.getElementById('benefit').onclick = function() {
    document.getElementById('loan').disabled = true;
    document.getElementById('premium').disabled = true;
}

如果你想在保险类型中点击贷款时重新启用它们,你需要另一个输入处理程序:

document.getElementById('loanType').onclick = function() {
    document.getElementById('loan').disabled = false;
    document.getElementsById('premium').disabled = false;
}

答案 1 :(得分:1)

以下是完成此操作的纯Javascript方法。实际上,您需要的是句柄两个事件 - 如果选中benefit DOM元素,则为一个;如果检查了load DOM元素,则为一个。由于点击load可能会重新启用两个禁用的单选按钮,因此创建一个单独的函数来处理每个按钮:

document.getElementById('benefit') = function() {
    document.getElementById('loan_coverage').disabled = true;
    document.getElementById('premium_coverage').disabled = true;
};

document.getElementById('loan') = function() {
    document.getElementById('loan_coverage').disabled = false;
    document.getElementById('premium_coverage').disabled = false;
};