2011-07-12 214 views
2

這是aspx頁面,其中有datalist單選按鈕的datalist在那裏。它是其中單選按鈕comning動態地 我要檢查所有單選按鈕進行檢查或不通過JavaScript,請幫我動態單選按鈕

<asp:DataList ID="TF_DataList" runat="server" RepeatDirection="Vertical" OnItemCreated="TF_Datalist_ItemCreated"> 
    <ItemTemplate> 
     <table style="text-align:left;"> 
      <tr> 
       <td valign="top" align="left" nowrap="nowrap"> 
       <asp:RadioButton ID="lbTrue" runat="server" GroupName="ans" Text="T" onclick="Radcheck();"/> 
        <asp:RadioButton ID="lbFalse" runat="server" GroupName="ans" Text="F" onclick="Radcheck();"/> 
</td> 
       <td>&nbsp;&nbsp;</td> 
       <td runat="server" id="AnswerContentTD" style="text-align: left">  
        <asp:Label ID="lblAnswerText" runat="server" Text='<%# Eval("AnswerText")%>'></asp:Label> 
       </td> 
      </tr> 
     </table> 
    </ItemTemplate> 
    <ItemStyle HorizontalAlign="Left"></ItemStyle> 
</asp:DataList> 
+0

爲什麼不嘗試使用[RequiredFieldValidator的(http://msdn.microsoft.com/en-us/library/e78xxk8k.aspx),而不是JavaScript的? –

回答

1

使用JavaScript

function ValidateDataListRadio() { 
    var datalist = document.getElementById("<%= TF_DataList.ClientID %>"); 
    var items = datalist.getElementsByTagName('input'); 

    for (i = 0; i < items.length; i++) { 
     if (items[i].type == "radio" && items[i].checked)) { 
      return true; 
     } 
    } 
    //alert("none selected"); 
    return false; 
} 

如果您正在使用jQuery

輕微標記中的更改。增加了一個的CssClass以單選

<asp:RadioButton ID="lbTrue" runat="server" 
      ClassName="radiobutton" 
      GroupName="ans" 
      Text="T" /> 

代碼

function ValidateDataListRadio() { 
    return $(".radiobutton").is(':checked').length; 
} 
+0

謝謝.............. :) – user838804