Javascript:同时启用2个文本框,一次单击复选框

时间:2012-05-02 02:00:27

标签: javascript

我对下面的代码有疑问:

<input id="myCheckBox" type="checkbox" name="alamatCat" 
       onClick="apply(this.checked, 'textBox3', 'textBox4')"> OT Date
</td>
<td>
From <input  id="textBox3" type="text" name="alamat" disabled="disabled"> 
To <input id="textBox4" type="text" name="alamat" disabled="disabled">

如果单击复选框,我希望同时启用2个文本框。

有任何建议吗?

修订:

如果我有以下js:

<script language="javascript">
function enableDisable(bEnable, textBoxID)
{
     document.getElementById(textBoxID).disabled = !bEnable
}

1 个答案:

答案 0 :(得分:0)

function foo(isChecked){
    document.getElementById('textBox3').disabled = isChecked ? "" : "disabled";
    document.getElementById('textBox4').disabled = isChecked ? "" : "disabled";
}

<input id="myCheckBox" type="checkbox" name="alamatCat" 
       onchange="foo(this.checked);" />

请注意,不推荐使用内联代码。

您可以改为使用addEventHandler

document.getElementById('myCheckBox').addEventHandler('change', foo);

将foo改为:

function `foo`(){
    var disableAttribute = this.checked ? "" : "disabled";
    document.getElementById('textBox3').disabled = disableAttribute;
    document.getElementById('textBox4').disabled = disableAttribute;
}

请注意,对于IE&lt; 9您需要使用attachEventMDN

上阅读更多内容