加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

MVC 3指定远程验证的验证触发器

发布时间:2020-12-16 07:09:20 所属栏目:asp.Net 来源:网络整理
导读:参见英文答案 ASP.net MVC 3 jQuery Validation; Disable Unobtrusive OnKeyUp?????????????????????????????????????6个 我已经使用MVC 3不引人注意的验证实现了远程验证,如下所示 该模型 public class MyViewModel { [Remote("ValidateAction","Validation
参见英文答案 > ASP.net MVC 3 jQuery Validation; Disable Unobtrusive OnKeyUp?????????????????????????????????????6个
我已经使用MVC 3不引人注意的验证实现了远程验证,如下所示

该模型

public class MyViewModel {
    [Remote("ValidateAction","Validation")]
    public string Text { get; set; }
}

控制器

public partial class ValidationController : Controller
{
    public virtual JsonResult ValidationAction(string aTextToValidate)
    {
        if(aTextToValidate == /* some condition */)
            return Json(true,JsonRequestBehavior.AllowGet);
        return Json("This is not valid,Try Again !",JsonRequestBehavior.AllowGet);
    }
}

风景

@using (Html.BeginForm() {
    @Html.TextBoxFor(m => m.Text)
    @Html.ValidationMessageFor(m => m.Text)
}

就是这样,一切正常,但ValidationAction会在每次按键时触发,这是不理想的,我想只是在元素失去焦点时触发,但无法想象如何做到这一点

UPDATE

实际上我已经注意到,默认情况下,验证会在brl上触发一次.i.e.第一次元素失去焦点,但是当试图纠正它时,验证然后触发onKeyUp.我认为这是预期的功能,并且考虑它可能非常有用.但是,知道是否可以修改此行为会很有用

解决方法

尝试

$.validator.setDefaults({onkeyup:false});

这个对我有用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读