ユーザーコントロールにあるチェックボックスがあり、ユーザーコントロールはウィザードコントロールにあり、ウィザードコントロールはマスターページを持つコンテンツページにあります。
ウィザード コントロールが終了する前に、チェックボックスをオンにする必要があります。チェックボックスと customvalidator は、ウィザード コントロールの最後のステップにあります。
今ではすべてがFirefoxで正常に動作し、IEでもテストすると. しかし、どういうわけか、他の人はチェックボックスをチェックせずにプロセスを続行できるかもしれません. チェックボックスにはトグルボタンエクステンダーもあります。それが問題ではないことを願っています。
私のインラインJavaScript(ユーザーコントロール内)
<script language="javascript" type="text/javascript">
// <![CDATA[
function ValidateTandCs(source, args)
{
args.IsValid = document.getElementById('<%= cbAV.ClientID %>').checked;
}
// ]]>
</script>
チェックボックス:
<asp:checkbox id="cbAV" runat="server"/>
customvalidator とトグルボタン エクステンダー
<asp:CustomValidator
ID="rfvAV"
Display="Dynamic"
runat="server"
ControlToValidate="cbAV"
ErrorMessage="RequiredFieldValidator"
ClientValidationFunction="ValidateTandCs"
onservervalidate="rfvAV_ServerValidate">
</asp:CustomValidator>
<ajaxToolkit:ToggleButtonExtender
ID="tbeav"
runat="server"
TargetControlID="cbAV"
ImageHeight="15"
ImageWidth="15"
CheckedImageUrl="~/images/checkbox-on.gif"
UncheckedImageUrl="~/images/checkbox-off.gif" />
customvalidator の背後にあるコード
protected void rfvAV_ServerValidate(object source, ServerValidateEventArgs args)
{
args.IsValid = (cbAV.Checked);
}
カスタムバリデータからクライアント側の検証を削除しようとしましたが、サーバーの検証しかありません。うまくいきません