ASP.NET中為DataGrid添加單選框
使用DataGrid控件添加單選框時,如果直接在模板中加入RadioButton服務器控件,由于.Net的機制,無法將這些RadioButton在客戶端出現在同一個組里面。這時我們可以使用Radio標簽來實現。
下面是HMTL 頁面代碼
下面是Page_Load中的數據綁定代碼
下面是btnOk_Click中獲取選擇項的代碼
下面是設置綁定項中哪個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 |