Javascript jQuery未正确验证RadioButtonList?
我想使用jQuery验证Javascript jQuery未正确验证RadioButtonList?,javascript,jquery,asp.net,validation,Javascript,Jquery,Asp.net,Validation,我想使用jQuery验证RadioButtonList,以确保用户已检查其中一个值。如果用户未选中任何单选按钮,则会显示警报。但是,问题是,即使用户选中其中一个单选按钮,警报仍会提示。根据我在网上找到的内容,以下jQuery代码似乎是正确的 这是我的无线电按钮列表: <asp:RadioButtonList ID="rbClass" runat="server" CssClass="rbClass"> <asp:ListItem Text="Asset Manageme
RadioButtonList
,以确保用户已检查其中一个值。如果用户未选中任何单选按钮,则会显示警报。但是,问题是,即使用户选中其中一个单选按钮,警报仍会提示。根据我在网上找到的内容,以下jQuery代码似乎是正确的
这是我的无线电按钮列表
:
<asp:RadioButtonList ID="rbClass" runat="server" CssClass="rbClass">
<asp:ListItem Text="Asset Management Tool" Value="Asset Management Tool"></asp:ListItem>
<asp:ListItem Text="Backup Tool" Value="Backup Tool"></asp:ListItem>
<asp:ListItem Text="Communication Tool" Value="Communication Tool"></asp:ListItem>
<asp:ListItem Text="Developer Tool" Value="Developer Tool"></asp:ListItem>
</asp:RadioButtonList>
如您所见,我尝试了几种不同的方法来检查
RadioButtonList
是否已被检查。我还尝试使用CssClass
属性(.rbClass
)进行验证,但它也没有按预期工作。我遗漏了什么吗?您不能通过javascript直接访问ASP控件,因为这些控件将呈现为HTML,因此其Id将被更改,并与父控件相关。因此,您可以在此处使用其客户端ID,如下所示:
var selectedCount=$("#<%=rbClass.ClientID %> input:checked").length;
if(selectedCount==0)
{
// Statements here nothing is checked
}
var selectedCount=$(“#输入:选中”).length;
如果(selectedCount==0)
{
//这里没有任何检查
}
我从互联网上找到了这些例子
<script type = "text/javascript">
function Validate()
{
var RB1 = document.getElementById("<%=RadioButtonList1.ClientID%>");
var radio = RB1.getElementsByTagName("input");
var isChecked=false;
for (var i=0;i<radio.length;i++)
{
if (radio[i].checked)
{
isChecked=true;
break;
}
}
if(!isChecked)
{
alert("Please select an item");
}
return isChecked;
}
</script>
函数验证()
{
var RB1=document.getElementById(“”);
var radio=RB1.getElementsByTagName(“输入”);
var isChecked=false;
对于(var i=0;ii也尝试过),但问题仍然存在;警报仍然显示。只允许链接的答案,请考虑从链接中添加有价值的点到答案,然后附加链接作为参考。
<script type = "text/javascript">
function Validate()
{
var RB1 = document.getElementById("<%=RadioButtonList1.ClientID%>");
var radio = RB1.getElementsByTagName("input");
var isChecked=false;
for (var i=0;i<radio.length;i++)
{
if (radio[i].checked)
{
isChecked=true;
break;
}
}
if(!isChecked)
{
alert("Please select an item");
}
return isChecked;
}
</script>