求解.

poppinH 2010-08-21 10:55:50
我写了个页面...用repter与checkbox组合.绑定了部门对应的人员.

接下来是想获取选定的值.(值的获取我写好了..)

碰到的问题是我这些值无法在button onclick的事件中传递出去..!~我把代码贴出来..麻烦大家给分析分析..!~谢谢!
  public void  chos (RepeaterItemEventArgs e)
{
//string[] person ={ };
ArrayList arr = new ArrayList();//定义数组,存放员工工号
CheckBoxList ck = e.Item.FindControl("ch_renyuan") as CheckBoxList;//从repter中获得checkboxList的ID
for (int i=0; i < ck.Items.Count; i++)//循环获得checkboxlist被选中的值
{
if (ck.Items.Count > 0)//判断是否有选择
{
if (ck.Items[i].Selected == true)//判断哪个被选择
{
// person += ck.Items[i].Value.ToString();
arr.Add(ck.Items[i].Value);
}
}
else
{
Response.Write("<script>alert('请选择收件人!!')</script>");
}
}
...全文
87 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
poppinH 2010-08-21
  • 打赏
  • 举报
回复
搞定..搞定...!~感谢感谢...!~千恩万谢...!~
我再继续传递过去..到其他页面处理...有问题再发贴请教各位啊...!~


结贴散分..!
qqdd2716 2010-08-21
  • 打赏
  • 举报
回复

protected void rptQuestionList_ItemCommand(object source, RepeaterCommandEventArgs e)
{
if (e.CommandName == "toDetail")
{
int itemIndex = e.Item.ItemIndex;
this.hfldRepIndex.Value = itemIndex.ToString();
}
}

LZ试下
用repeater的这个事件处理~
poppinH 2010-08-21
  • 打赏
  • 举报
回复
额..没有来..>!~ 囧...不好意思..不好意思...谢谢指点..!
littlecc2009 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 poppinh 的回复:]

C# code
protected void btn_chok_Click(object sender, EventArgs e)
{
ArrayList arr = new ArrayList();//定义数组,存放员工工号
foreach (RepeaterItem item in rpbumen.Items)
{
……
[/Quote]
你在pageload里有没把获取和绑定数据的代码放到(!IsPostback)里?
poppinH 2010-08-21
  • 打赏
  • 举报
回复
  protected void btn_chok_Click(object sender, EventArgs e)
{
ArrayList arr = new ArrayList();//定义数组,存放员工工号
foreach (RepeaterItem item in rpbumen.Items)
{
CheckBoxList ck = item.FindControl("ch_renyuan") as CheckBoxList;
for (int i = 0; i < ck.Items.Count; i++)
{
if (ck.Items[i].Selected)
{
arr.Add(ck.Items[i].Value);
Response.Write("<script>alert('" + arr + "')</script>");
}
}
}
}


没有重新绑定啊..!~这个是代码?
poppinH 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 littlecc2009 的回复:]
引用 8 楼 poppinh 的回复:

引用 5 楼 littlecc2009 的回复:
你应该在button处理程序里:
循环查找repeater的rows里的checkbox有没选中吧?
foreach (repeateritem item in repeater1.items)
{
checkbox chk= (checkbox)item.findcontrol("check……
[/Quote]

就是chk.然后后面就没有datavalue这个选项...!~自己写上去.NET也不理我..!~55555
zhouzangood 2010-08-21
  • 打赏
  • 举报
回复
mark
littlecc2009 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 poppinh 的回复:]

引用 7 楼 wuyq11 的回复:
foreach (repeateritem item in repeater1.items)
{
CheckBoxList ck =item .FindControl("ch_renyuan") as CheckBoxList;
for (int i=0; i < ck.Items.Count; i++)
{
if (ck.Ite……
[/Quote]
是不是你回发后重新获取并绑定了数据?是的话checked当然为false
poppinH 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 wuyq11 的回复:]
foreach (repeateritem item in repeater1.items)
{
CheckBoxList ck =item .FindControl("ch_renyuan") as CheckBoxList;
for (int i=0; i < ck.Items.Count; i++)
{
if (ck.Items[i].Selected)
{
……
[/Quote]

谢谢..可以循环..也能获得值...但是判断下来不管是选中还是未选中都ck.Items[i].Selected 的值都是false !~~不知道为什么...!
littlecc2009 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 poppinh 的回复:]

引用 5 楼 littlecc2009 的回复:
你应该在button处理程序里:
循环查找repeater的rows里的checkbox有没选中吧?
foreach (repeateritem item in repeater1.items)
{
checkbox chk= (checkbox)item.findcontrol("checksingle");
if(chk.chec……
[/Quote]
怎么无法获取呢?
poppinH 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 littlecc2009 的回复:]
你应该在button处理程序里:
循环查找repeater的rows里的checkbox有没选中吧?
foreach (repeateritem item in repeater1.items)
{
checkbox chk= (checkbox)item.findcontrol("checksingle");
if(chk.checked)
{。。。。

[/Quote]


我用了...可是无法获得chk.datavalue..?
wuyq11 2010-08-21
  • 打赏
  • 举报
回复
foreach (repeateritem item in repeater1.items)
{
CheckBoxList ck =item .FindControl("ch_renyuan") as CheckBoxList;
for (int i=0; i < ck.Items.Count; i++)
{
if (ck.Items[i].Selected)
{
arr.Add(ck.Items[i].Value);
}
}
}
poppinH 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 littlecc2009 的回复:]
你应该在button处理程序里:
循环查找repeater的rows里的checkbox有没选中吧?
foreach (repeateritem item in repeater1.items)
{
checkbox chk= (checkbox)item.findcontrol("checksingle");
if(chk.checked)
{。。。。

[/Quote]


哦~~~~~~茅塞顿开...!我去试试...! 我一直想着先获取值..然后再传递到其他页面.!谢谢..!
littlecc2009 2010-08-21
  • 打赏
  • 举报
回复
你应该在button处理程序里:
循环查找repeater的rows里的checkbox有没选中吧?
foreach (repeateritem item in repeater1.items)
{
checkbox chk= (checkbox)item.findcontrol("checksingle");
if(chk.checked)
{。。。。
Peter200694013 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 poppinh 的回复:]
我写了个页面...用repter与checkbox组合.绑定了部门对应的人员.

接下来是想获取选定的值.(值的获取我写好了..)

碰到的问题是我这些值无法在button onclick的事件中传递出去..!~我把代码贴出来..麻烦大家给分析分析..!~谢谢!

C# code
public void chos (RepeaterItemEventArgs e)
……
[/Quote]
这些值无法在button onclick的事件中传递出去?
什么意思?
你下传递到哪?
littlecc2009 2010-08-21
  • 打赏
  • 举报
回复
[Quote=引用楼主 poppinh 的回复:]
我写了个页面...用repter与checkbox组合.绑定了部门对应的人员.

接下来是想获取选定的值.(值的获取我写好了..)

碰到的问题是我这些值无法在button onclick的事件中传递出去..!~我把代码贴出来..麻烦大家给分析分析..!~谢谢!
C# code
public void chos (RepeaterItemEventArgs e)
{……
[/Quote]
public void chos (RepeaterItemEventArgs e)
你这个不是button的click处理程序吧?
poppinH 2010-08-21
  • 打赏
  • 举报
回复
    protected void btn_chok_Click(object sender, EventArgs e)
{

}


我在这里用什么代码可以 使用 chos?
ding6796985 2010-08-21
  • 打赏
  • 举报
回复
每天发帖一次可得10分

62,073

社区成员

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

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

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

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