【问题标题】:Client side validation on button click before AJAX request在 AJAX 请求之前单击按钮进行客户端验证
【发布时间】:2015-05-05 10:22:43
【问题描述】:

我正在使用 MVC 4,我希望能够从表中的行集合中验证单行,以确保正确输入字段并通过验证。

属性在模型上正确应用,例如:

[Required]
[MaxLength(50)]
[MinLength(5)]
public string Name {get; set;}

现在,在客户端 - 如何在调用 AJAX 方法之前启用客户端验证?

添加更多复杂性 - 我有一个按钮,您可以在其中动态地向表中添加一行,填写字段,最后点击更新按钮,这将通过 ajax 进行 POST。但在这篇文章之前,我想在客户端验证该特定行。

我该怎么做?

谢谢

【问题讨论】:

    标签: asp.net-mvc validation unobtrusive-validation


    【解决方案1】:

    只要您在 View 中实现验证助手,这实际上非常简单。

    var form = $('#form');
    $.validator.unobtrusive.parse(form);
    form.validate();
    
    if (form.valid()) {
        .... ajax stuff
    }
    

    在发起 http 请求之前调用上述方法,它将确保您的表单得到验证。

    【讨论】:

    • 谢谢!所以这几乎可以工作。我有一个需要字符串但必须最少 5 个字符和最多 100 个字符的问题。如果我输入
    • 嗯,你试过用[StringLength(50, MinimumLength=5)]吗?
    • 好的,因为这是一个不同的问题,所以创建一个新问题并包含您的视图代码、控制器操作和修改后的 JavaScript :) 如果我的回答解决了您的“无验证”问题,我将不胜感激" 问题!
    • 其实你是对的。那行得通 - 我在用别的东西!
    • 啊,太棒了。谢谢:D
    猜你喜欢
    • 2020-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-16
    相关资源
    最近更新 更多