62,068
社区成员
发帖
与我相关
我的任务
分享
<script>
var count=0;
function onChange(obj)
{
if(obj.checked)
{
var sum=parseInt(document.getElementById('<%= hidCount.ClientID%>').value);
if(count>=sum)
{
obj.checked=false;
//alert('只能选择两项');
document.getElementById('<%= lbl.ClientID%>').innerText='只能选择'+sum+'项';
document.getElementById('div').style.display='';
}
else
{
count++;
document.getElementById('<%= lbl.ClientID%>').innerText='';
document.getElementById('div').style.display='none';
}
}
else
{
count=count-1;
document.getElementById('<%= lbl.ClientID%>').innerText='';
document.getElementById('div').style.display='none';
}
}
</script>
<asp:CheckBoxList ID="cbl" runat="server">
<asp:ListItem Text="A" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="B" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="C" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="D" onclick="onChange(this)"></asp:ListItem>
</asp:CheckBoxList>
<asp:HiddenField ID="hidCount" runat="server" />
<asp:Label ID="lbl" runat="server"></asp:Label>
<div id="div" style=" background-color:Red;display:none" >
<asp:Literal ID="lit" runat="server"></asp:Literal>
</div>
int tempCount = 3;//这里你可以赋读取数据库之后的值
hidCount.Value = tempCount.ToString();
lit.Text = "只能选择" + hidCount.Value + "项";
protected void Page_Load(object sender, EventArgs e)
{
foreach (ListItem li in CheckBoxList1.Items)
li.Attributes.Add("onclick", "onChange(this)");
}
<script>
var count=0;
function onChange(obj)
{
if(obj.checked)
{
if(count>=2)
{
obj.checked=false;
alert('只能选择两项');
}
else
count++;
}
else
count=count-1;
}
</script>
<asp:CheckBoxList ID="cbl" runat="server">
<asp:ListItem Text="A" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="B" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="C" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="D" onclick="onChange(this)"></asp:ListItem>
</asp:CheckBoxList>
<input type="hidden" id="hidCount" value="0" />
<script>
function onChange(obj)
{
var count=parseInt(document.getElementById('hidCount').value);
if(obj.checked)
{
if(count>=2)
{
obj.checked=false;
alert('只能选择两项');
}
else
{
document.getElementById('hidCount').value=count+1;
}
}
else
{
document.getElementById('hidCount').value=count-1;
}
}
</script>
<asp:CheckBoxList ID="cbl" runat="server">
<asp:ListItem Text="A" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="B" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="C" onclick="onChange(this)"></asp:ListItem>
<asp:ListItem Text="D" onclick="onChange(this)"></asp:ListItem>
</asp:CheckBoxList>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script type="text/javascript" >
function limit(cbl) {
var cbs = document.getElementById("<%= CheckBoxList1.ClientID %>").getElementsByTagName("input");
var count = 0;
for (var i = 0; i < cbs.length; i++) {
if (cbs[i].type == "checkbox") {
if (cbs[i].checked) {
count++;
}
}
}
if (count > 3) {
cbl.checked = false;
alert("不能多于3项");
return;
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:CheckBoxList ID="CheckBoxList1" runat="server">
<asp:ListItem Text="1" Value="1"></asp:ListItem>
<asp:ListItem Text="2" Value="2"></asp:ListItem>
<asp:ListItem Text="3" Value="3"></asp:ListItem>
<asp:ListItem Text="4" Value="4"></asp:ListItem>
<asp:ListItem Text="5" Value="5"></asp:ListItem>
</asp:CheckBoxList>
</form>
</body>
</html>
protected void Page_Load(object sender, EventArgs e)
{
foreach (ListItem li in CheckBoxList1.Items)
li.Attributes.Add("onclick", "limit(this)");
}