2011-07-12 172 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