显示远程验证成功响应的自定义消息
我正在使用远程验证来检查我的 asp.net mvc 3 应用程序 (C#) 注册期间用户名的可用性。
我使用 MVC 远程属性验证作为:
[Remote("IsUserNameAvailable", "User")]
public string UserName { get; set; }
我需要在两个条件下显示消息:
- 显示错误消息“用户名不可用” - 失败条件
- 显示成功消息“用户名可用” - 成功条件
我能够显示失败条件的消息,而无需任何问题,如:
return Json("Username not available", JsonRequestBehavior.AllowGet);
但对于成功条件,我需要发送 true 响应(不使用自定义消息)为:
return Json(true, JsonRequestBehavior.AllowGet);
如何显示远程验证成功条件的自定义消息?
I am using remote validation to check the availability of username during registration for my asp.net mvc 3 applicaion (C#).
I am using MVC remote Attribute validation as:
[Remote("IsUserNameAvailable", "User")]
public string UserName { get; set; }
I need to show the message on two conditions:
- Show error message "Username not available" - Failure Condition
- Show Success message "Username available" - Success Condition
I am able to show the Failure Condition's message without any issue like:
return Json("Username not available", JsonRequestBehavior.AllowGet);
But for Success Condition, I need to send true in response(not with the custom message) as:
return Json(true, JsonRequestBehavior.AllowGet);
How can i show custom message for Success Condition of Remote validation?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
看到这个链接...
此处
一种方法实现的方法是从验证操作中添加自定义 HTTP 响应标头:
现在在客户端上,我们显然有一个标准表单和一个用户名输入字段:
现在最后一部分难题是将完整的处理程序附加到用户名字段上的远程规则:
see this link...
here
One way to achieve that is to add a custom HTTP response header from the validation action:
Now on the client we obviously have a standard form and an input field for the username:
and now the last piece of the puzzle is to attach a complete handler to the remote rule on the username field:
你能返回一个对象(将被序列化为 Json)吗?
如:
那么就可以在视图中解析这个了。
另外,如果您这样做,但用户名不可用,您也可以添加一些建议的用户名。
例如
Are you able to return an object (which will be serialised to Json)?
Such as:
Then you can parse this in the view.
Also, if you do it this way, but the username is NOT available, you could add a few suggested usernames too.
e.g.