如何取得Repeater控件选择的项目

Repeater控件,每个item前有一个CheckBox,把选择的item列显出来。

 

这个演法中,可以看到选择之后,该行highlight,此功能可以参考这个链接:http://www.cnblogs.com/insus/articles/1443165.html

下面是Repeater控件Html,有两个地方需要注意的,就是CheckBox与Label,这个Label是随你需要获取的内容而变化喔。如你想获取Nickname,那你需要把绑定的的内容放在Label上。

ExpandedBlockStart.gif Repeater & CheckBox
     < asp:Repeater  ID ="RepeaterEmailList"  runat ="server" >
                                            
< HeaderTemplate >
                                                
< table  border ="1"  cellpadding ="1"  cellspacing ="0"  width ="96.5%" >
                                                    
< tr >
                                                        
< td >
                                                        
&nbsp;
                                                        
</ td >
                                                        
< td >
                                                            Nickname
                                                        
</ td >
                                                        
< td >
                                                            Email
                                                        
</ td >
                                                    
</ tr >
                                            
</ HeaderTemplate >
                                            
< ItemTemplate >
                                                
< tr  style ="height:10px; line-height:10px;" >
                                                    
< td >
                                                         
<!-- 下面这个CheckBox的ID,注意喔,因为后台需要用到它 -->
                                                        
< asp:CheckBox  ID ="CheckBox1"  runat ="server"   />
                                                    
</ td >
                                                    
< td >
                                                        
<% Eval ( " nickname " ) %>
                                                    
</ td >
                                                    
< td >
                                                       
<!-- 下面这个Label的ID,注意喔,因为后台需要用到它 -->
                                                        
< asp:Label  ID ="Label1"  runat ="server"  Text ='  <%# Eval("mail")% > '> </ asp:Label >
                                                    
</ td >
                                                
</ tr >
                                            
</ ItemTemplate >
                                            
< FooterTemplate >
                                                
</ table >
                                            
</ FooterTemplate >
                                        
</ asp:Repeater >

 

下面Insus.NET将会写一个方法,也许你的专案不止一个地方使用到,在需要的地方直接调用即可。

ExpandedBlockStart.gif GetCheckBoxSelectedValue
private   string  GetCheckBoxSelectedValue(Repeater repeater,  string  checkBoxId, string  labelId)
    {
        
string  tempValue  =   string .Empty;

        
foreach  (RepeaterItem item  in  repeater.Items)
        {
            
if  (item.ItemType  ==  ListItemType.Item  ||  item.ItemType  ==  ListItemType.AlternatingItem)
            {
                
if  (item.FindControl(checkBoxId)  !=   null   &&  item.FindControl(labelId)  !=   null )
                {
                    CheckBox cb 
=  (CheckBox)item.FindControl(checkBoxId);
                    Label lbl 
=  (Label)item.FindControl(labelId);

                    
if  (cb.Checked)
                    {
                        tempValue 
=  tempValue  +   " ; "   +  lbl.Text;
                    }
                }              
            }
        }

        
if  (tempValue.Length  >   0 )
        {
            tempValue 
=  tempValue.Substring( 2 );
        }

        
return  tempValue;
    }

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值