ASP.NET中为DataGrid添加单选框

 使用DataGrid控件添加单选框时,如果直接在模板中加入RadioButton服务器控件,由于.Net的机制,无法将这些RadioButton在客户端出现在同一个组里面。这时我们可以使用Radio标签来实现。

下面是HMTL 页面代码

< form  id ="Form1"  method ="post"  runat ="server" >
< asp:datagrid  id ="DataGrid1"  runat ="server"  AutoGenerateColumns ="False" >
< Columns >
< asp:TemplateColumn >
< ItemTemplate >
< input  type ="radio"  name ="rdo"  <%# GetChecked(DataBinder.Eval(Container, "DataItem")) % >  value=' <% # DataBinder.Eval(Container,  " DataItem " %> '>
< asp:Label  runat ="server"  Text ='<%#  DataBinder.Eval(Container, "DataItem") % > ' ID="Label1">
</ asp:Label >
</ ItemTemplate >
</ asp:TemplateColumn >
</ Columns >
</ asp:datagrid >< br >
< asp:Button  id ="btnOk"  runat ="server"  Text ="确定" ></ asp:Button >

下面是Page_Load中的数据绑定代码

         Dim  arr  As   New  ArrayList
        arr.Add(
" 新闻综合 " )
        arr.Add(
" 综艺 " )
        arr.Add(
" 电影 " )
        arr.Add(
" 教育 " )
        arr.Add(
" 戏剧 " )
        arr.Add(
" 军事 " )
        arr.Add(
" 体育 " )
        DataGrid1.DataSource 
=  arr
        DataGrid1.DataBind()

下面是btnOk_Click中获取选择项的代码

 Response.Write(Request.Form( " rdo " ))

下面是设置绑定项中哪个Radio被中的函数

     Public   Function  GetChecked( ByVal   str   As   String As   String
        
If   str   =  Request.Form( " rdo " Then
            
Return   " checked "
        
Else
            
Return   ""
        
End   If
    
End Function

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值