Ich versuche, die Remote-Funktion zu verwenden, aber es funktioniert nicht.
Eindeutige E-Mail-Modell ASP.NET Code zuerst
Dies ist mein Code:
Modell
[Required(ErrorMessage = "L'email est obligatoire.")]
[RegularExpression(@"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$", ErrorMessage = "email n'est pas valide.")]
[DataType(DataType.EmailAddress)]
[Remote("IsEmailAdminExist", "Admin", ErrorMessage = "Email exist!")]
public virtual string Email { get; set; }
-Controller
[HttpGet]
public JsonResult IsEmailAdminExist(string Email)
{
return Json(!AdminContext.admins.Any(a => a.Email == Email), JsonRequestBehavior.AllowGet);
}
Ich habe nichts zurück.
Das ist meine Form in Ansicht i verwenden, um die Html.BeginForm
@using (Html.BeginForm("Create", "AdminController", FormMethod.Post, new { @id = "form2", @role = "form", @enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div class="col-md-4">
<div class="form-group @(ViewData.ModelState["Email"] != null && Html.ViewData.ModelState["Email"].Errors.Any() ? "has-error" : "")">
<label class="control-label">
Email <span class="symbol required"></span>
</label>
@Html.EditorFor(model => model.Email, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.Email, "", new { @class = "help-block" })
</div>
</div>
<div class="row">
<div class="col-md-8">
</div>
<div class="col-md-4">
<button class="btn btn-yellow btn-block" type="submit" name="Create">
Register <i class="fa fa-arrow-circle-right"></i>
</button>
</div>
</div>
}
Haben Sie UnobtrusiveJavaScript aktiviert und enthalten Sie jquery.validate. *. Js-Dateien? – Win
Ja, ich aktiviere UnobtrusiveJavaScript und ClientValidation –
Zeigen Sie die Skripts an, die Sie in die Ansicht aufgenommen haben. Der Code, den Sie gezeigt haben, funktioniert einwandfrei. –