2013-07-11 61 views
0

我有一个表单,有很多字段。我需要把验证码?

其中一些是userId,userFirstName,userLastName。

当用户输入不正确的userId值,然后在userId字段页面附近必须显示错误消息并将此错误添加到validationSummary(这是asp.net mvc unobtrusive验证的标准行为)。如果userId是正确的,那么页面必须删除错误并自动填充userFirstName和userLastName(这不是标准行为)

我该如何实现这一点?

这里是来找我的脑海:

  1. 远程验证属性

    它在我的情况不好的定制。这就是为什么我决定不使用它。

  2. 添加特殊的方法用于jQuery验证插件(例如

    jQuery.validator.addMethod( “userIdValidation”,函数(值,元素){// 一些逻辑 一些回报; },“请指定正确的userId“);)

并放在那里验证逻辑和autopopulate其他领域。 在这种情况下,我混合验证和其他东西。

3。为jquery验证插件添加特殊方法,仅用于验证,并为autopopulate的输入更改事件添加特殊处理程序。

在这种情况下,我需要发送两个ajax请求到服务器的一件事。当然这也不好。那么正确的方法是什么?我很困惑。

回答

0

你有没有想过使用局部视图来显示userFirstName和userLastName?

您可以触发发送userId的AJAX请求,然后返回名称字段的局部视图。在被调用的控制器中,您可以验证传入的userId,然后在一个查询中获取名称详细信息。如果验证失败,则可以使用空字段返回部分视图。