我有一个<asp:Checkbox />
我想看看是否通过 jQuery 检查了它。问题是,它总是返回 false。这与我通过类选择元素有关吗?
js
$(document).ready(initialize);
var map;
function initialize() {
var x;
x = $(".chkSetMap");
x.click(setMap);
}
function setMap() {
if ($('.chkSetMap').attr('checked') == true) {
$(".comboMap").attr("disabled", true);
}
}
复选框
<asp:CheckBox ID="chkSetMap" CssClass="chkSetMap" runat="server" />
呈现的复选框
<span class="chkSetMap"><input id="ctl00_ContentPlaceHolder1_chkSetMap" type="checkbox" name="ctl00$ContentPlaceHolder1$chkSetMap" /></span>
最佳答案
尝试使用 .is()
方法和 :checked
速记选择器
$(document).ready(initialize);
var $chkSetMap;
function initialize() {
$chkSetMap = $(".chkSetMap input:checkbox").click(setMap);
}
function setMap() {
$(".comboMap").attr("disabled", $chkSetMap.is(':checked'));
}
<小时/>
工作示例:http://jsfiddle.net/hunter/5XA7D/ 已更新!
<小时/>由于 ASP.Net 服务器控件非常棒,因此它将您的复选框包装在 span
中。 span
有 chkSetMap
类,而不是复选框。
关于jquery - 使用类选择器处理复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6115895/