你可以做的是讓自ASP.Net以來,複選框的標籤元素將複選框的Text
顯示爲標籤元素,然後將其CSS顏色屬性更改爲灰色。
function EnableCheckBoxes(enable, chk) {
chk.prop("disabled", enable);
chk.prop("checked", false);
if(enabled === true) {
$("label[for='<%=cb1.ClientID%>']").css("color", "black");
} else {
$("label[for='<%=cb1.ClientID%>']").css("color", "gray")
}
}
另外,模擬殘疾人的效果,你可以設置不透明度爲像0.5,而不是改變顏色屬性,然後啓用複選框,當它重置爲1。代碼如下。
function EnableCheckBoxes(enable, chk) {
chk.prop("disabled", enable);
chk.prop("checked", false);
if(enabled === true) {
$("label[for='<%=cb1.ClientID%>']").css("opacity", 1);
} else {
$("label[for='<%=cb1.ClientID%>']").css("opacity", .5)
}
}
如果你想使用chk
而不是複選框的獲取客戶端Id,然後使用以下版本相同的方法。
function EnableCheckBoxes(enable, chk) {
chk.prop("disabled", enable);
chk.prop("checked", false);
if(enabled === true) {
$("label[for='" + chk[0].id + "']").css("opacity", 1);
} else {
$("label[for='" + chk[0].id + "']").css("opacity", .5)
}
}
標籤!沒想到這一點。好的。 – Chase
這就是ASP.Net如何呈現複選框的文本。 – Sunil
@Sunil你明確引用CheckBox cb1,但我需要更通用的東西來處理傳入的變量 - chk –