![](/img/trans.png)
[英]check uncheck all checkbox of checkboxlist using jquery ASP.Net
[英]checking All checkbox asp.net jquery
我正在使用asp.net c#jquery vs 2008
我有兩個復選框列表(cbList,checkboxList1)和一個復選框(chkALL)。 當我選中復選框(chkALL)時,它應該選中復選框列表(CbList)中的所有復選框
我在jquery中使用以下代碼。它無法正常工作。它檢查兩個復選框列表。我只需要檢查一個復選框列表。 任何幫助表示贊賞
<script type="text/javascript" src="jquery-1.6.4.js"></script>
<script type="text/javascript">
function jqCheckAll2(id, name) {
$("INPUT[@Name=" + name + "][type='checkbox']").attr('checked', $('#' + id).is(':checked'));
}
</script>
<form id="form1" runat="server">
<div>
<asp:CheckBox ID="chkAll" runat="server" Text="Check All" onclick="jqCheckAll2( this.id, 'cbList' )"/><br />
<asp:CheckBoxList ID="cbList" runat="server">
</asp:CheckBoxList>
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
</asp:CheckBoxList>
</div>
</form>
我看不到是什么導致了您的問題,但是我可以看到的是您使用cbList
作為服務器端名稱。 相反,您應該使用cbList.ClientID
,它是控件的唯一客戶端名稱。 換句話說,像這樣添加onclick
事件端:
chkAll.Attributes["onclick"] = string.Format("jqCheckAll2(this.id, '{0}')", cbList.ClientID);
然后將jqCheckAll2更改為此:
function jqCheckAll2(id, name) {
$("#" + name).find(":checkbox").attr('checked', $('#' + id).is(':checked'));
}
使用復選框可以全部選中或取消選中div中所有活動復選框的全部。 ClientIDMode =“ Static”只是不允許在服務器上運行時更改ID。
<asp:CheckBox ID="chkAll" runat="server" ClientIDMode="Static"/>
<asp:Label ID="lblAll" runat="server" Text="Label" ClientIDMode="Static">Select All</asp:Label>
$(document).ready(function() {
$("#chkAll").on('change', function() { // on change of state
if (this.checked) // if changed state is "CHECKED"
{
$("#lblAll").text("Unselect All");
$("#myDiv input[type=checkbox]").each(
function() {
if($(this).attr('disabled')==null)
$(this).prop('checked', true);
}
);
} else {
$("#lblAll").text("Select All");
$("#myDiv input[type=checkbox]").each(
function () {
if ($(this).attr('disabled') == null)
$(this).prop('checked', false);
}
);
}
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.