问题的提出:必须保证多个CheckBox只能选中一个,使用Radio有点不合适,因为必须保证选择项可以全部不被选中
解决方法来源: http://gwazy.cnblogs.com/archive/2005/07/25/199765.html
谢谢boytomato分享经验 :)
今天在此基础上添加了解决在DetailsView控件下的方法,只是只是一点点改动,记录下来,以备下次使用
1、实现 DataGrid 模板列中有多个checkbox 时只许选中一个
//
实现 DataGrid 模板列中有多个checkbox 时只许选中一个
function
change_check(temp)
{
var checks= temp.parentElement.parentElement.getElementsByTagName("input");
for (i=0;i<checks.length-1;i++)
{
if (checks[i]!=temp &&checks[i].checked)
{
checks[i].checked=!temp.checked ;
}
}
}
2、实现 DetailsView 模板列中有多个checkbox 时只许选中一个
// 实现 DetailsView 模板列中有多个checkbox 时只许选中一个
function change_check1(temp)

{
var checks= temp.parentElement.parentElement.parentElement.getElementsByTagName("input");
for (i=0;i<checks.length-1;i++)
{
if (checks[i]!=temp &&checks[i].checked)
{
checks[i].checked=!temp.checked ;
}
}
}
3、使用方法:
<
ItemTemplate
>
<
asp:CheckBox
id
="User"
Runat
="server"
onclick
="change_check(this)"
></
asp:CheckBox
>
</
ItemTemplate
>
本文提供了一种在DataGrid及DetailsView控件中限制多个CheckBox只能选中一个的方法。通过JavaScript函数实现,允许用户在表格中进行单选操作,同时支持不选状态。
178

被折叠的 条评论
为什么被折叠?



