MVC Remote属性验证
模型验证方式一:
1、需要添加引用: using System.Web.Mvc;
2、在模型属性上添加验证: [Remote("CheckIsHaveSerialNo", "MeasureEquipment",ErrorMessage = "出厂编号已存在")]
3、在控制器里面添加验证方法:
/// <summary>
/// 判断标准器出厂标号是否存在
/// </summary>
/// <param name="serialNo"></param>
/// <returns></returns>
public JsonResult CheckIsHaveSerialNo(string serialNo)
{
//存在返回1,不存在返回0
//flag为false时将错误信息显示
var result = RequestHelper.GetObject("api/IsHaveSerialNo", $"serialNo={serialNo}");
var flag = int.Parse(result.ToString())==0;
return Json(flag, JsonRequestBehavior.AllowGet);
}
模型验证方式二:
View异步请求:
<div class="form-group">
@Html.LabelFor(model => model.SerialNo, htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.EditorFor(model => model.SerialNo, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.SerialNo, "", new { @class = "text-danger" })
<span id="errorSerialNo" class="text-danger"></span>
</div>
</div>
$("#SerialNo").blur(function () {
var serialNo = $("#SerialNo").val();
$.ajax({
type: "GET",
url: "@Url.Action("CreateIsHaveSerialNo", "MeasureEquipment")",
data: {
serialNo:serialNo },
success: function (data) {
if (parseInt(data)===1) {
$("#errorSerialNo").html("出厂编号已存在");
$("#SerialNo").focus();
} else {
$("#errorSerialNo").html("");
}
}
});
});
控制器代码:
public ActionResult CreateIsHaveSerialNo(string serialNo)
{
//存在返回1,不存在返回0
var result = RequestHelper.GetObject("api/CreateIsHaveSerialNo", $"serialNo={serialNo}");
return Content(result.ToString());
}
转载来源:https://www.cnblogs.com/william-CuiCui0705/p/8085740.html