jqueryフォームウィザードをasp.netで使用して、マルチステップフォームを作成しようとしています. フォームは作成済みですが、メールの検証中に問題が発生しています。次のステップに進む前に、2 つのフォーム フィールド email と confirm email が一致する必要があります。私が抱えている問題は、マスター ページを使用しているため、コントロール ID の名前が変更されていることです。jquery フォーム ウィザードの validationOptions は、ID ではなく入力コントロールの name プロパティを参照しているように見えるため、clientidmode の設定も機能しません。これを機能させる方法についての提案または代替案を探しています。
ここに私のマークアップがあります
<label for="txtconfemail">Confirm Email</label>
<asp:TextBox CssClass="input_field_12em" runat="server" ID="txtconfemail" ClientIDMode="Static"></asp:TextBox>
これが私のjavascriptです。このコードは、必須 (equalTo ではない) のみをチェックし、それも機能しません。
<script type="text/javascript">
$(function () {
$("#myform").formwizard({
formPluginEnabled: true,
validationEnabled: true,
focusFirstInput: true,
formOptions: {
success: function (data) { $("#status").fadeTo(500, 1, function () { $(this).html("You are now registered!").fadeTo(5000, 0); }) },
beforeSubmit: function (data) { $("#data").html("data sent to the server: " + $.param(data)); },
dataType: 'json',
resetForm: true
},
validationOptions: {
rules: {
txtconfemail : {
required: true
}
},
messages: {
txtemailconf:
{
required:"Email is required"
}
}
}
}
);
});
</script>
txtemailconf を ctl100$MainContent$txtconfemail に置き換えると、検証が開始されます。