Asp.net MVC を使用してパスワードを作成し、パスワード フィールドを確認しています。現在、リモート属性を使用してパスワードと確認パスワードが同じかどうかを確認していますが、適用されているボックスが変更された場合にのみリモートが関数を呼び出します。
昨年にさかのぼる以前の投稿を調べたところ、最も一般的な提案は比較属性であることがわかりましたが、現在は廃止されています。
この問題には、事前に構築されたソリューションがあると思います。
これはモデルから
[Remote(UserController.ActionNameConstants.PasswordMatch,
UserController.NameConst, AdditionalFields = "ConfirmPassword",
ErrorMessage = "The passwords do not match")]
[MinLength(8, ErrorMessage="Minimum password length is 8")]
[DisplayName("Password"), RequiredIf("Id == 0",
ErrorMessage="Password is required")]
public string Password { get; set; }
[DisplayName("Confirm Password"), RequiredIf("Id == 0",
ErrorMessage = "Confirm password is required")]
public string ConfirmPassword { get; set; }
これはコントローラーに
[HttpGet]
public virtual JsonResult PasswordMatch(string password,string confirmPassword)
{
return this.Json(password ==
confirmPassword,JsonRequestBehavior.AllowGet);
}