我在contentplaceholder上有来自asp.net的复选框和文本框控件。我想调用javascript函数,以根据复选框的选中状态启用文本框控件。我为此编写了以下javascript代码-
将checkbox & textbox
的名称分别呈现给浏览器ctl00$ContentPlaceHolder1$chkCall, ctl00$ContentPlaceHolder1$txtCall
之后
function chkChanged() {
try {
var echk = document.getElementsByName('ctl00$ContentPlaceHolder1$chkCall');
var etxt = document.getElementsByName('ctl00$ContentPlaceHolder1$txtCall');
if (echk.Checked) {
etxt.Enabled = true;
}
else {
etxt.Enabled = false;
etxt.Text = "";
}
return true;
}
catch (err) {
alert(err.Message);
return false;
}
}
当我执行上述脚本时,它会调用函数,但代码不适用于控件。而且它不会引发任何异常。
上面的脚本有什么问题?
谢谢。
最佳答案
请改用以下脚本:
var echk = document.getElementById("<%= chkCall.ClientID %>");
var etxt = document.getElementById("<%= txtCall.ClientID %>");