求js代码,.net ,我在repeater中加了一个 checkbox, id=“che”,点击一个按钮,实现che全部选中
7个回答
展开全部
你 这样肯定不对,repeater循环数据源完之后会生成多个id为”che“的checkbox控件,但是一个页面中的dom元素id是不能重复的,所以只会有第一个id是”che“,其他的会从第二个开始编号递增~建议你把id换成name,给所有的子checkbox取相同的name,然后点击全选的时候去找这些子checkbox选中即可。一下是全选框点击事件,
///全选、全不选
function checkAll()
{
///子checkbox的name为che,全选id为selectAll
var list = document.getElementByName("che");
var chkAll = document.getElementById("selectAll");
///或者是等于true,你试验一下
if(chkAll.checked == checked)
{
if(list.length > 0)
{
for(var i=0;i<list.length;i++)
{
list[i].checked = checked;
}
}
}
else
{
if(list.length > 0)
{
for(var j=0;j<list.length;j++)
{
list[j].checked = "";
}
}
}
}
更多追问追答
追问
' />
var list = document.getElementByName("che");这一句取不到che
追答
你把runat=”server“去掉试试~还有你的全选控制的子checkbox不要取ID,或是ID给它绑定你的辨识字段,比如标识你那一行数据的XXID等,但是一定不能重复~
展开全部
function selectall()
{
var o = document.getElementById("slt").checked;
var obj = document.getElementsByName("che");
if (o)
{
if (obj.length <= 0)
{
return false;
}
else
{
if (typeof (obj.length) == "undefined")
{
obj.checked = true;
}
else
{
for (var i = 0; i < obj.length; i++)
{
obj[i].checked = true;
}
}
}
}
else
{
if (typeof (obj.length) == "undefined")
{
obj.checked = false;
}
else
{
for (var i = 0; i < obj.length; i++)
{
obj[i].checked = false;
}
}
}
}
最好用name,不要用id
{
var o = document.getElementById("slt").checked;
var obj = document.getElementsByName("che");
if (o)
{
if (obj.length <= 0)
{
return false;
}
else
{
if (typeof (obj.length) == "undefined")
{
obj.checked = true;
}
else
{
for (var i = 0; i < obj.length; i++)
{
obj[i].checked = true;
}
}
}
}
else
{
if (typeof (obj.length) == "undefined")
{
obj.checked = false;
}
else
{
for (var i = 0; i < obj.length; i++)
{
obj[i].checked = false;
}
}
}
}
最好用name,不要用id
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在repeater中遍历按钮,用class="che"来识别
$(".che").each()
$(".che").each()
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
点击全选,出发Chick事件
if (((CheckBox)sender).Checked == true)
{
foreach (RepeaterItem item in Repeter1.Items)
{
CheckBox cb = (CheckBox)item.FindControl("che");
cb.Checked = true;
}
}
else
{
foreach (RepeaterItem item in Repeter1.Items)
{
CheckBox ck = (CheckBox)item.FindControl("che");
ck.Checked = false;
}
}
if (((CheckBox)sender).Checked == true)
{
foreach (RepeaterItem item in Repeter1.Items)
{
CheckBox cb = (CheckBox)item.FindControl("che");
cb.Checked = true;
}
}
else
{
foreach (RepeaterItem item in Repeter1.Items)
{
CheckBox ck = (CheckBox)item.FindControl("che");
ck.Checked = false;
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
var index = 0;
var chks = document.getElementsByName("chkHouse");
if (type == 0) {
index = chks.length - 1;
}
var falg = !chks[index].checked;
for (var i = 0; i < chks.length; i++) {
chks[i].checked = falg;
}
var chks = document.getElementsByName("chkHouse");
if (type == 0) {
index = chks.length - 1;
}
var falg = !chks[index].checked;
for (var i = 0; i < chks.length; i++) {
chks[i].checked = falg;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把id换成name,给所有的子checkbox取相同的name,然后点击全选的时候去找这些子checkbox选中即可。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询