【问题标题】:Blocking Past Dates through JavaScript? Safe? [closed]通过 JavaScript 阻止过去的日期?安全的? [关闭]
【发布时间】:2016-03-24 20:55:45
【问题描述】:

我有一个带有 JQ datepicker 的简单预订表格,我根据 JavaScript new Date() 在日历上设置了开始日期。

现在无需让事情变得更复杂,并运行某种 Ajax 请求以从服务器获取正确的日期,因为显然 JS 将返回用户设备上设置的任何时间。

应用程序本身会验证提交日期,所以问题是:

  1. 有多少用户的计算机和设备运行错误的日期/时间?
  2. 禁用过去几天是个好习惯吗?
  3. 我是否应该允许用户选择任何日期并验证 带有某种 JS 验证功能或表单提交?

【问题讨论】:

  • 如果您在服务器上验证日期,请不要担心。如果用户有一个疯狂的时钟,那是他们的问题。他们甚至可能想要那样做。

标签: javascript jquery date datepicker


【解决方案1】:

有多少用户的计算机和设备运行错误的日期/时间?

可能很多。

禁用过去几天是个好习惯吗?

这并没有什么问题

我是否应该允许用户选择任意日期并使用某种 JS 验证功能或表单提交进行验证?

这是重点。你可以使用所有你想要的 JS 验证,但认为这只是对用户的一种礼貌。 所有业务关键验证都应该在服务器上完成 - 即使您也在客户端验证了输入。这是为了确保即使恶意用户尝试在不使用您的前端网站的情况下向您的服务器发出请求,也能维护数据完整性。

【讨论】:

  • 感谢您的反馈。我正在验证服务器端的所有内容,但只是想获得有关禁用过去日期的反馈,因为它是一把双面剑。用户要么输入过去的日期并收到警告,要么您将其禁用,因为他们的设备日期错误,他们可能无法选择它。
猜你喜欢
  • 1970-01-01
  • 2019-06-20
  • 1970-01-01
  • 2010-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-16
  • 2019-02-22
相关资源
最近更新 更多