我想打开文本框启用和禁用取决于选中复选框与Java脚本,有无论如何做到这一点?
这里是我的代码如何将变量ID放入java脚本内部的asp.net代码中?
<script type="text/javascript">
function ed1(bEnable, textBoxID, textBoxID2) {
document.getElementById("<%= textBoxID.ClientID %>").disabled = !bEnable
document.getElementById("<%= textBoxID2.ClientID %>").disabled = !bEnable
}
</script>
这里是复选框,文本框
<asp:CheckBox ID="CH0" runat="server" Font-Names="Tahoma" onclick="ed1(this.checked, 'TB1', 'TB2');"
Font-Size="X-Small" Style="font-size: 12px; right: 20px; color: #006699;
font-family: Tahoma; position: absolute; top: 25px; width: 80px;"
/>
<asp:TextBox ID="TB0" runat="server" EnableViewState="False" Height="12px" MaxLength="2"
Style="font-size: 11px; right: 110px; vertical-align: middle; color: #0099ff; font-family: tahoma;
position: absolute; top: 25px; text-align: left; width: 15px; " Enabled="false"
Wrap="False" ValidationGroup="1234567890"></asp:TextBox>
<asp:TextBox ID="TB1" runat="server" EnableViewState="False" Height="12px" MaxLength="2"
Style="font-size: 11px; right: 140px; vertical-align: middle; color: #0099ff; font-family: tahoma;
position: absolute; top: 25px; text-align: left; width: 15px; " Enabled="false"
Wrap="False" ValidationGroup="1234567890"></asp:TextBox>
它不会因为ASP不undrestand什么textBoxID手段努力! (已宣布对JavaScript的!)
我收到以下错误:
BC30451: 'textBoxID' is not declared. It may be inaccessible due to its protection level.
如果我把实际的ID,而不是textBoxID2它将伟大工程,但我有很多的复选框,许多文本框启用和禁用无数JavaScript似乎并不是一个好主意!
让我知道,如果这能解决的,并在此先感谢
如果你有单独的JavaScript文件,它将不会工作,但如果你在aspx页面中有这个代码,它将工作。 – Devesh
它位于内容标记之前的aspx文件的末尾,其中存在相同的复选框和文本框!但它不工作!编辑:这里是错误BC30451:'textBoxID'未声明。由于其保护级别,它可能无法访问。 – Sijav
是textboxID和textboxID2不是实际的asp.net控件的id?你想循环所有的控制,并在飞行中禁用它?检查这一个http://stackoverflow.com/questions/2617629/how-to-get-all-elements-inside-div-that-starts-with-a-known-text – Devesh