jquery、c#、服务器验证和验证块
Im使用ms验证块验证使用jquery(ajax)发布的用户输入。有人能给我一个最好的方法来通知用户,数据不验证的例子 我只是抛出一个异常并使用$.ajax函数的错误事件来通知用户问题,还是有更好的方法来处理这个问题jquery、c#、服务器验证和验证块,c#,asp.net,jquery,ajax,C#,Asp.net,Jquery,Ajax,Im使用ms验证块验证使用jquery(ajax)发布的用户输入。有人能给我一个最好的方法来通知用户,数据不验证的例子 我只是抛出一个异常并使用$.ajax函数的错误事件来通知用户问题,还是有更好的方法来处理这个问题 提前感谢如果您使用的是MVC,这里有一个将内置数据注释逻辑与jquery结合使用的好例子: 如果您要在服务器上执行一些超出基本验证范围的错误处理,那么我个人会使用error事件来处理关键错误(无效权限、服务器错误等),然后在success中执行验证/错误检查。如果您进行了大量aj
提前感谢如果您使用的是MVC,这里有一个将内置数据注释逻辑与jquery结合使用的好例子: 如果您要在服务器上执行一些超出基本验证范围的错误处理,那么我个人会使用
error
事件来处理关键错误(无效权限、服务器错误等),然后在success
中执行验证/错误检查。如果您进行了大量ajax解析,那么制作简单的自定义json结果对象有时会很方便:
$.ajax(..
success : function(item) {
if( !item.ok ) { /* handle validation logic*/ }
else { /* success */ }
}
);
您的json返回对象可以如下所示
public class JsonResultObject
{
public bool ok { get; set; }
public string message { get; set; }
public object data { get; set; }
}
然后在控制器(如果是MVC)中按如下方式返回:
public JsonResult Validate( CustomPostModel model )
{
JsonResultObject result = new JsonResultObject()
{
ok = false,
message = "Some custom error message here",
data = model
}
return Json(result);
}
凉的因此,您创建了一个json包装器对象。看起来是个好主意。如果我只是返回html,我想我可以有一个字符串属性称为html或类似的。是的,它很容易根据您的需要而变化。您不需要包装器,但在构建大量提供反馈的json调用时,它会很有帮助。如果您想简化,可以制定一个约定:“当出现错误时返回字符串'error',否则返回对象”,然后您可以在
成功
块中检查If(item='error')
。您不会得到严格的服务器错误,因此将由客户机函数向用户显示适当的反馈。这将消除在服务器上装箱JsonResults的需要-干杯