メールの検証に Compare、Required、および Regex 属性を使用する登録フォームがある MVC アプリに取り組んでいます。ユーザーは電子メール アドレスを入力してから、電子メール アドレスを確認する必要があります。Compare 属性を使用して、同じものを入力したことを確認します。これは私のモデルです。
[RegularExpression(@"<REGEX IS HERE>", ErrorMessage = "Please enter a valid e-mail address")]
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Email")]
public string EmailAddress { get; set; }
[Compare("EmailAddress", ErrorMessage = "The email and confirmation email do not match.")]
[RegularExpression(@"<REGEX IS HERE>", ErrorMessage = "Please enter a valid e-mail address")]
[Required]
[DataType(DataType.EmailAddress)]
[Display(Name = "Confirm Email")]
public string ConfirmEmailAddress { get; set; }
他のすべての検証、つまり必須/正規表現は正常に機能しますが、比較のクライアント側では機能しません。フォームが戻ってきてエラーを投稿したときに機能します。
jquery.validate.unobtrusive と jquery1.5.1 にバグがあるという多くの記事を読みましたが、何をしても問題は解決しません。
私はここで髪を引っ張っています。