如何控制在DataList中的CheckBox选择不能超过3个!

china_G 2006-10-25 09:26:39
如何控制在DataList中的CheckBox选择不能超过3个!


麻烦高手帮我解决下啊,在线等!!
...全文
311 19 打赏 收藏 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
china_G 2006-10-25
  • 打赏
  • 举报
回复
怎么给分啊!我还不会呢,呵呵,刚查到是ListItemType.Item谢谢你们了。
游北亮 2006-10-25
  • 打赏
  • 举报
回复
// 确定是数据行而非页首或页尾
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
Fanny 2006-10-25
  • 打赏
  • 举报
回复
判断是否是模板列 你拖到DataList里的控件都是放在这个列里的。
china_G 2006-10-25
  • 打赏
  • 举报
回复
不好意思,我太菜了,e.Item.ItemType==ListItem.Item是什么意思,ListItem.Item代表的什么,
Fanny 2006-10-25
  • 打赏
  • 举报
回复
加了if判断吗?
china_G 2006-10-25
  • 打赏
  • 举报
回复
我那个名就是这个,没动!不知道怎么回事,郁闷!
china_G 2006-10-25
  • 打赏
  • 举报
回复
改了啊。!
Fanny 2006-10-25
  • 打赏
  • 举报
回复
是啊 那个CheckBox1是要改成你具体在模板里那个CheckBox的Name值的
Fanny 2006-10-25
  • 打赏
  • 举报
回复
哦 忘加了点东西 不好意思 常犯这个错
private void DataList1_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
if(e.Item.ItemType==ListItem.Item)
{
CheckBox cbx=(CheckBox)e.Item.FindControl("CheckBox1");
cbx.Attributes.Add("onclick","checkIt(this)");
}
}
游北亮 2006-10-25
  • 打赏
  • 举报
回复
汗一个,CheckBox cbx=(CheckBox)e.Item.FindControl("CheckBox1");
这里面的CheckBox1是要根据你的实际ID设置的,你就直接照抄了???
china_G 2006-10-25
  • 打赏
  • 举报
回复
未将对象引用设置到对象的实例。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.NullReferenceException: 未将对象引用设置到对象的实例。

源错误:


行 139: {
行 140: CheckBox cbx=(CheckBox)e.Item.FindControl("CheckBox1");
行 141: cbx.Attributes.Add("onclick","checkIt(this)");
行 142: }
行 143: }

Fanny 2006-10-25
  • 打赏
  • 举报
回复
别顶我肺,我肺不好......咳咳咳
游北亮 2006-10-25
  • 打赏
  • 举报
回复
呵呵,顶一下楼上的
Fanny 2006-10-25
  • 打赏
  • 举报
回复
.cs
private void DataList1_ItemDataBound(object sender, System.Web.UI.WebControls.DataListItemEventArgs e)
{
CheckBox cbx=(CheckBox)e.Item.FindControl("CheckBox1");
cbx.Attributes.Add("onclick","checkIt(this)");
}

.aspx //引用楼上的啦:P

<script language=javascript>
var num=0;
function checkIt(obj){
if(obj.checked){
num++;
}else{
num--;
}
if(num>3){
num--;
obj.checked = false;
alert("不能超过三个!");
}
}
</script>

china_G 2006-10-25
  • 打赏
  • 举报
回复
我只的是checkbox是在datalist模版里
china_G 2006-10-25
  • 打赏
  • 举报
回复
在datalist模版里也可以这么写吗?
游北亮 2006-10-25
  • 打赏
  • 举报
回复
这个用JS实现,
在每个CheckBox的Onclick事件中处理,如:
<input type=checkbox onclick="checkIt(this);">
<script language=javascript>
var num=0;
function checkIt(obj){
if(obj.checked){
num++;
}else{
num--;
}
if(num>3){
num--;
obj.checked = false;
alert("不能超过三个!");
}
}
</script>
china_G 2006-10-25
  • 打赏
  • 举报
回复
是整个datalist中就可以选三个!
Fanny 2006-10-25
  • 打赏
  • 举报
回复
不太明白
是说每行记录不能选三个以上,还是说整个DataList里只能选三个?
代码下载链接: https://pan.quark.cn/s/90fbf78c3289 "1元云购"是一种依托互联网的购物方式,用户仅需投入微小的资金(一般为一元)便有机会赢取高价值商品。此类模式常借助抽奖机制来判定获胜者,从而吸引众多用户加入。"1元云购源代码"是承载该业务流程的程序代码,其用途在于搭建一个完整的1元云购系统。 在构建1元云购源代码的过程中,主要包含以下几个核心技术要点: 1. **数据库架构**:为了有效存储商品详情、用户资料、交易历史及开奖结果,必须设计科学合理的数据库框架。这包括商品数据表、用户信息表、订单记录表和开奖记录表等,确保数据的统一性与完整性。 2. **支付渠道对接**:1元云购平台需与第三方支付服务(例如支付宝、微信支付)进行对接,以实现用户的在线支付操作。这涉及API接口调用、交易状态同步、退款流程管理等环节。 3. **随机数生成策略**:抽奖过程的核心在于公平透明地选定获奖者,通常采用随机数生成策略来实现。该策略需保障每位参与者拥有相等的获奖机会,同时防止欺诈行为。 4. **用户界面开发**:卓越的用户体验是吸引参与者的关键因素。前端页面应兼具视觉吸引力与操作便捷性,清晰展示商品信息、购买步骤、中奖规范等,并提供用户注册、登录、查询订单等功能。 5. **服务器程序设计**:后端系统负责处理用户请求,如管理订单、计算中奖号码、更新数据库信息等。这部分通常采用PHP等服务器端技术实现,需应对并发访问与高负载情形。 6. **安全措施**:1元云购平台可能面临恶意攻击,例如SQL注入、XSS跨站脚本攻击等。因此,源代码需遵循安全编程准则,对用户输入进行过滤与校验,同时运用HTTPS等加密手段保障数据传输安全。 7. **...

62,271

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧