这是一个初级问题(我认为),不好意思在这里问。它可能已经被回答了,但我找不到我的搜索。
在最简单的形式中,有两个复选框,每个 CheckBox 都有一个与之关联的控件(例如,TextBox 或 DropDownList)。当 CheckBox 的选中状态发生变化时,必须启用或禁用关联的控件。
JavaScript 函数:
<script type="text/javascript:>
function enable(bValue, control)
{
document.getElementByID(control).Enabled = bValue;
}
</script>
在下面的 HTML 中,我将此函数称为事件过程,例如 enable(this.Checked, "expJob") 和 enable(this.Checked, "itemJob"):
<body>
Billable? <asp:CheckBox ID="expBillable" runat="server" Checked="false" OnCheckedChanged="enable(this.Checked, "expJob");" />
to <asp:DropDownList ID="expJob" runat="server" Enabled="true" />
<br /><br />
Billable? <asp:CheckBox ID="itemBillable" runat="server" Checked="false" OnCheckedChanged="enable(this.Checked, "itemJob");" />
to <asp:DropDownList ID="itemJob" runat="server" Enabled="true" />
问题是,由于使用了引号,我无法在 HTML 中指定“expJob”参数。即使使用单引号也不起作用。
那么问题来了:这种方法行得通吗?什么是正确的语法?
编写和使用这样的函数的最佳方法是什么?我确信在必须遍历网格中的行时需要使用这种函数。
有趣的是,我看到的所有问题/答案都使用了控件的 disabled 属性。我只能使用 Enabled 属性。有人可以解释为什么,有什么区别?