我已经使用来自输入名称的网页的 JQuery post (ajax) 调用完成了类似的操作。然后,您将(名称的值)发布到控制器上的一个方法,该方法可以返回一个 JSON 值,其中包含一个表示验证是否通过的标志以及您想要返回给用户的消息。例如 :
网页中的Javascript:
$("#name").change(function () {
var nameVal = $(this).val();
$.post(getRoot() + "/NameController/ValidateName", { name: nameVal },
function (data) {
if (data.valid == "true") {
alert("A valid name was chosen");
} else
{
alert(data.message);
}
}, "json");
});
控制器(NameController)代码:
[HttpPost]
public ActionResult ValidateName(string name)
{
// actual validation carried out in a static utility class (Utils.IsNameValid)
// if you are loading the same validation rules from your table each time
// consider caching the data in the application cache or a static List.
bool nameIsValid = Utils.IsNameValid(name, out string ErrorMessage);
JsonResult result = new JsonResult();
result.Data = new { valid = (nameIsValid "true" : "false"), message = ErrorMessage };
return result;
}