【发布时间】:2016-03-29 14:37:27
【问题描述】:
当另一个复选框“cb1”被选中/取消选中时,我正在尝试启用/禁用一个复选框“cb1Sub”。
<table>
<tr>
<td>
<asp:CheckBox ID="cb1" runat="server" onchange="checkedCB1(this);" />
</td>
<td>
<asp:CheckBox ID="cb1Sub" runat="server" Enabled="false" />
</td>
</tr>
</table>
function checkedCB1(elm) {
var elmId = $(elm).find("input").attr('id');
var elmChk = $(elm).find("input").attr('checked');
var elmSubId = elmId + "Sub";
if (elmChk == "checked") {
document.getElementById(elmSubId).disabled = false;
} else {
document.getElementById(elmSubId).disabled = true;
}
}
这在 Firefox 中有效,但在 IE 中无效。
我想当我启用复选框时,它的跨度仍然被禁用。
从萤火虫,我看到这个:
<span disabled="disabled">
<input type="checkbox" name="cb1Sub" id="cb1Sub">
</span>
【问题讨论】:
-
尝试
.prop()而不是.attr() -
$(elm).find("input")?elem本身就是input
标签: javascript asp.net