【问题标题】:JQuery Validation Not ReliableJQuery 验证不可靠
【发布时间】:2015-07-30 23:41:59
【问题描述】:

我有一个我继承的 Web 应用程序,它使用 JQuery (jquery.form-validator.min.js) 表单验证。我在其上运行的每个测试,该表单似乎都按预期工作得很好。但是,每天至少有一次记录进入数据库,其中必填字段为 NULL。每当我尝试通过表单复制记录时,它不会让我提交,因为验证正确地检测到丢失的信息然后阻止它。有没有人对 jquery.form-validator 有可靠性问题?或者,是否有人对如何追踪这些流氓记录如何进入系统有任何建议?我应该重写它以使用服务器端验证吗?我正在使用.Net MVC

【问题讨论】:

  • 规则 1. 永远不要相信用户输入。客户端验证是一个不错的奖励,但您必须始终在服务器上进行验证。 MVC 内置了所有这些功能。将验证属性应用于您的属性(例如[Required],在您的属性的视图中包含@Html.ValidationMesageFor(),并包含相关的jquery.validate.jsjquery.validate.unobtrusive.js 脚本,您可以获得客户端和服务器端侧面验证。即使客户端禁用 javascript 或恶意用户绕过您的脚本并发布无效数据,它也能正常工作。

标签: javascript jquery asp.net-mvc validation


【解决方案1】:

我建议你检查你的模型类,看看你是否也在使用

[required]
public string yourvariable {get;set;}

为你的变量。

如果可能,请更新您的数据库以拒绝必填字段的空值。

【讨论】:

  • 如果你这样做,当你更新你的模型时它不会被覆盖吗?
【解决方案2】:

您应该同时进行客户端验证和服务器验证。 用户可以禁用浏览器的javascript,如果那样,客户端验证都不起作用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-11
    • 2010-11-25
    • 2013-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多