誰かが私にこのラジオボタンリストをasp.netで検証する手助けをしてくれましたか?私はclientideスクリプトでcustomvalidatorを使用しています。私はそれが更新RadioButtonList CustomValidator
<asp:RadioButtonList ID="radioGender" runat="server"
RepeatDirection="Horizontal">
<asp:ListItem Value="Male" Text="Male" />
<asp:ListItem Value="Female" Text="Female" />
</asp:RadioButtonList>
<asp:CustomValidator ID="valGender" runat="server"
ValidateEmptyText="true"
ClientValidationFunction="validateGender"
Display="Dynamic"
ErrorMessage="Please choose you're gender."
ValidationGroup="UserInfo">*</asp:CustomValidator>
<script language="javascript" type="text/javascript">
function validateGender(source, args) {
var radGender = document.getElementById("<%= radioGender.ClientID %>");
var elements = radGender.getElementsByTagName("input");
var selected = false;
for (var i = 0; i < elements.length; i++) {
if (elements[i].checked == true) {
selected = true;
break;
}
}
if (!selected) {
args.isValid = false;
return args.isValid;
} else {
args.isValid = true;
return args.isvalid;
}
}
</script>
何らかの理由wqorking取得することはできません。
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<asp:RadioButtonList ID="radioGender" runat="server" ValidationGroup="UserInfo" Width="130px"
RepeatDirection="Horizontal">
<asp:ListItem Value="Male" Text="Male" />
<asp:ListItem Value="Female" Text="Female" />
<asp:ListItem Value="None" Text="None" Selected="True" style="display:none; width:0px" />
</asp:RadioButtonList>
</td>
<td align="left">
<asp:CustomValidator ID="valGender" runat="server"
ControlToValidate="radioGender"
ClientValidationFunction="validateGender"
ErrorMessage="Please select you're gender." EnableClientScript="true"
ValidationGroup="UserInfo" Display="Dynamic" style="margin-left:-5px">*</asp:CustomValidator>
<script language="javascript" type="text/javascript">
function validateGender(source, args) {
var radGender = document.getElementById("<%= radioGender.ClientID %>");
var elements = radGender.getElementsByTagName("input");
var selected = false;
for (var i = 0; i < elements.length; i++) {
if (elements[i].checked && elements[i].value == "None") {
selected = true;
break;
}
}
if (selected) {
args.IsValid = false;
return false;
} else {
args.IsValid = true;
return true;
}
}
</script>
</td>
</tr>
</table>
<asp:Button ID="btnSubmitProfile" runat="server"
Text="Save" OnClick="btnSubmitProfile_Click" ValidationGroup="UserInfo" />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" ValidationGroup="UserInfo" />
いずれか一方をデフォルトでチェックしてみませんか?次に、もう検証する必要はありません。 –
いいえ、すべての人が女性になるとは限りません。さらに、ラジオボタンリストを使用してさらに使用するようにしたいです。 – ONYX