我应该显示从元素后得到json结果的错误吗?即:消息 - “电子邮件已存在”必须添加到具有错误消息css类的元素 - User_Email后面。如何显示由JSON返回的错误元素后
目前,我正在将其显示在表单顶部。
控制器操作结果
在这里,我返回JSON。
ObjectParameter objIErrorCode = new ObjectParameter("ErrorCode", typeof(Int32));
ObjectParameter objBFlag = new ObjectParameter("bFlg", typeof(bool));
objConnection.Check_User_Exists(User_Email, objBFlag, objIErrorCode);
if (Convert.ToBoolean(objBFlag.Value) != true)
{
return Json(new { Success = false, Message = "Email already exists" }, JsonRequestBehavior.AllowGet);
}
else
{
return Json(new { Success = true, Message = "Email not exists" }, JsonRequestBehavior.AllowGet);
}
jQuery验证
$("#User_Email").blur(function() {
if ($(this).val() != "") {
$.ajax({
url: "/User/VerifyUserEmail?User_Email=" + $("#User_Email").val(),
success: function (result) {
var success = result.Success;
var message = result.Message;
if (success) {
var errorMsg = message;
$('#msg').html(errorMsg);
$('#msg').show();
}
else {
var errorMsg = null;
$('#msg').html(errorMsg);
$('#msg').hide();
}
}
});
}
return false;
});
查看
<div class="form-group">
@Html.LabelFor(model => model.User_Email, new { @class = "control-label col-lg-2" })
<div class="col-lg-4">
@Html.EditorFor(model => model.User_Email)
@Html.ValidationMessageFor(model => model.User_Email)
</div>
</div>
在您的Jquery代码中写入的ID msg控件在哪里?你为什么试图在你的其他条件中写入null? –
你有一个'ValidationMessageFor()'属性,那么为什么你不只是在'User_Email'属性上使用'[Remote]'属性,并且不需要你的脚本就可以完成这项工作。 –
@StephenMuecke非常感谢。我正在寻找这样的解决方案。 –