用JS脚本实现CheckBoxList只能选择其中的两个

其实很简单 首先是CheckBoxListText.aspx

<HEAD>
<TITLE>CheckBoxList实例</TITLE>
</HEAD>
<SCRIPT language="JavaScript">
function SetCheckBoxState(str)
{
o = document.getElementsByTagName("INPUT")
//o = from1.cbYyjslscly;
var val=0;
for(i=0;i<o.length;i++)
{
if(o[i].type=="checkbox" && o[i].checked && o[i].name==str)
{
//alert(o[i].value)
val = val + 1;
}
if(val > 2)
{
alert('你选择的项目只能在2个以内!')
o[i].checked=false;
return;
}

}
//alert(val)


}
</SCRIPT>
</head>
<body MS_POSITIONING="GridLayout">

<form id="Form1" method="post" runat="server">
<asp:CheckBoxList id="CheckBoxList1" runat="server">
<asp:ListItem Value="NET">NET</asp:ListItem>
<asp:ListItem Value="JAVA">JAVA</asp:ListItem>
<asp:ListItem Value="VB">VB</asp:ListItem>
</asp:CheckBoxList>

</form>

</body>
</html>

然后是 后台管理文件里面

CheckBoxList1.Attributes.Add("OnClick","SetCheckBoxState('CheckBoxList1');");

就OK了 !

 
实现后端绑定数据的 ASP.NET CheckboxList 两个联动,可以通过 postback 事件来实现。 1. 在页面中添加两个 CheckboxList 控件,并给它们分别添加一个 AutoPostBack 属性。 ```html <asp:CheckBoxList ID="checkboxlist1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="checkboxlist1_SelectedIndexChanged"> </asp:CheckBoxList> <asp:CheckBoxList ID="checkboxlist2" runat="server" AutoPostBack="True" OnSelectedIndexChanged="checkboxlist2_SelectedIndexChanged"> </asp:CheckBoxList> ``` 2. 在后端编写 checkboxlist1_SelectedIndexChanged() 方法,获取选中的值,并根据选中的值绑定数据到下一个 CheckboxList。 ```csharp protected void checkboxlist1_SelectedIndexChanged(object sender, EventArgs e) { // 获取选中的值 string selectedValue = checkboxlist1.SelectedValue; // 根据选中的值绑定数据到下一个 CheckboxList DataTable dt = GetDataFromDatabase(selectedValue); checkboxlist2.DataSource = dt; checkboxlist2.DataTextField = "ColumnName"; checkboxlist2.DataValueField = "ColumnValue"; checkboxlist2.DataBind(); } ``` 其中,GetDataFromDatabase() 是获取数据的自定义方法,返回一个 DataTable 对象。 3. 在 checkboxlist2_SelectedIndexChanged() 中再次绑定数据到下一个 CheckboxList。 ```csharp protected void checkboxlist2_SelectedIndexChanged(object sender, EventArgs e) { // 获取选中的值 string selectedValue = checkboxlist2.SelectedValue; // 根据选中的值绑定数据到下一个 CheckboxList DataTable dt = GetDataFromDatabase(selectedValue); checkboxlist3.DataSource = dt; checkboxlist3.DataTextField = "ColumnName"; checkboxlist3.DataValueField = "ColumnValue"; checkboxlist3.DataBind(); } ``` 通过以上步骤,即可实现 ASP.NET CheckboxList两个联动,而不需要使用 JavaScript 和 Ajax 技术。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值