2011-05-11 74 views
0

我有網格視圖,每行包含五個單選按鈕。在這五個中,一次只能檢查一個。爲了實現這一點,我試圖保持對應於數據庫值的單選按鈕的Id屬性。但它在Id字段中給我一個錯誤。 .Net不允許在ID屬性中使用eval函數。行將取決於數據庫中記錄的數量。我想在數據庫中保留5個單選按鈕,在這五個中,只有一個可以被檢查。如何完成這項任務? //我的.aspx頁面的代碼如下。如何根據數據庫值設置單選按鈕ID屬性?

<%@ Page Title="Applicant Rating Form" Language="C#" MasterPageFile="~/Interviewer/interviewerMasterPage.master" AutoEventWireup="true" CodeFile="AppRatingForm.aspx.cs" Inherits="Interviewer_AppRatingForm" %> 

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> 
<table cellpadding="2" width="100%"> 
    <tr> 
     <td colspan="2"> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td align="center" class="tdtitle" colspan="2"> 
      Interview Rating Form</td> 
    </tr> 
    <tr> 
     <td colspan="2"> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td width="25%"> 
      Name of Applicant</td> 
     <td> 
      <asp:Label ID="nameLbl" runat="server" Text="Label"></asp:Label> 
     </td> 
    </tr> 
    <tr> 
     <td> 
      Post Applied For</td> 
     <td> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td> 
      Department</td> 
     <td> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td colspan="2"> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td align="center" class="tdtitle" colspan="2"> 
      Assessment</td> 
    </tr> 
    <tr> 
     <td align="left" colspan="2"> 
      <asp:GridView ID="assesmentGrid" runat="server" AutoGenerateColumns="False" 
       onpageindexchanging="assesmentGrid_PageIndexChanging"> 
       <Columns> 
        <asp:BoundField HeaderText="ID" DataField="SecId"/> 
        <asp:BoundField HeaderText="Traits" DataField="SecName"/> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          A 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:RadioButton ID='<%# Eval("SecId") %>' runat="server" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          B 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:RadioButton ID='<%# Eval("SecId") %>' runat="server" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          C 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:RadioButton ID='<%# Eval("SecId") %>' runat="server" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          D 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:RadioButton ID='<%# Eval("SecId") %>' runat="server" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          E 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:RadioButton ID='<%# Eval("SecId") %>' runat="server" /> 
         </ItemTemplate> 
        </asp:TemplateField> 
        <asp:TemplateField> 
         <HeaderTemplate> 
          Comments 
         </HeaderTemplate> 
         <ItemTemplate> 
          <asp:TextBox ID="commentBox" runat="server" TextMode="MultiLine"></asp:TextBox> 
         </ItemTemplate> 
        </asp:TemplateField> 
       </Columns> 
      </asp:GridView> 
     </td> 
    </tr> 
    <tr> 
     <td align="center" class="tdtitle" colspan="2"> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td align="center" colspan="2"> 
      &nbsp;</td> 
    </tr> 
    <tr> 
     <td align="center" colspan="2"> 
      &nbsp;</td> 
    </tr> 
    </table> 
</asp:Content> 

回答

1

你需要設置所有單選按鈕的GroupName屬性同組/排。這將只允許一次選擇一個。我不會建議嘗試使用Eval動態設置ID,只要確保它們都是唯一的,它應該可以正常工作。

相關問題