javascript - 我应该在 asp mvc 中使用不显眼的 javascript 而不是编写自己的验证代码吗?

标签 javascript jquery asp.net-mvc unobtrusive-javascript unobtrusive-validation

用于客户端验证的 javascript 代码已经从头开始编写并且非常完美 在职的。但是为了使我们的解决方案更具可扩展性并最大限度地减少线路,我们正在考虑用内置的 asp MVC 支持替换我们的 Javascript 客户端验证,以支持不显眼的 javascript。 但是,在某些情况下它特别不利。例如。我想用正则表达式验证一个字段。并且该字段不直接绑定(bind)到模型。但是为了实现不显眼的 javascript,我需要将它绑定(bind)到我在模型中创建的某个字段,只是为了验证目的(而不是在我的表单提交中使用它) 有没有办法在不将字段绑定(bind)到模型的情况下实现验证? 如果我用不引人注目的验证替换 javascript 代码,即使不是在所有情况下,又有什么可观的优势?

最佳答案

相当大的优势:

  • 由于开发人员非常了解非干扰性验证,因此您的代码更容易被其他人(以及将来您自己)理解
  • 利用 Html Helpers 自动添加验证属性。您编写的代码更少,可读性更强。
  • 您的验证代码更不容易出错,因为它是一个开源项目,来自世界各地的人们都参与修复错误和提高代码性能。

对解决方案中的所有模型使用 unobstrusive。如果没有开箱即用的验证,您可以随时 write up your own validation function对于绑定(bind)到模型的属性。

注意有很多开源项目扩展.net验证器属性,比如MVC FoolProof

最后,如果有属性未绑定(bind)到您的模型(等等,为什么有属性未绑定(bind)到您的模型?),您可以为这些属性编写自定义客户端代码。

关于javascript - 我应该在 asp mvc 中使用不显眼的 javascript 而不是编写自己的验证代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16416969/

相关文章:

jQuery Mobile 默认停止文件上传?

ASP.Net VS ASP.Net MVC

c# - Hql 的计数哪里出了问题

javascript - 我如何在 Jquery 中做一个项目列表并在服务器端获取它?

javascript - 当图像具有 css 作为绝对位置并且其父 div 具有 css 作为相对位置时,如何使图像可拖动?

javascript - 从父框架中拖动一个项目并将其放入子 iframe 中的可放置对象中

javascript - 尝试通过复选框过滤 JSON 内容

javascript - Android 版 Chrome 上的网络蓝牙未找到任何设备

Javascript for 循环性能

javascript - 使用 spring 表单时如何在 ajax/jquery 中获取复选框值