Alpaca JS 不考虑正则表达式是否包含长度限制

Alpaca JS doesn't take into consideration if the regex pattern contains length limit

我正在构建一个 Web 应用程序,使用 alpaca.js。我在使用正则表达式模式时注意到一个问题。如果模式包含长度,则不考虑。例如,这种模式“[0-9]{5}”应该只允许 5 个数字,但它验证数字而不是长度。为了解决这个问题,我添加了最小和最大长度,但如果我有这种模式 ^[0-9]{1,3}([a-zA-Z]?)$ ,这是一个大问题。 有人以前遇到过这个问题吗?谢谢

您所做的是正确的,但是,这将用于模式验证,在您的示例中,您可能需要掩码而不是正则表达式。该掩码将允许用户更轻松地输入固定宽度的输入,您希望他们以特定格式(日期、phone 数字等)输入数据

"options": {
  "fields": {
    "cap": {
      "maskString": "99999" // 9 is a number, and here the mask will supports 5 digits
    }
  }
}

要使用 maskString 选项,您首先需要 import/add Masked Input Plugin (the website is down, you could grab it from CDNJS or github)

有关 maskString 的更多详细信息,请参阅 Alpaca 文本字段文档中的 Example 4。 有关屏蔽输入插件的更多详细信息,请参阅此 github repository

这里有一个 fiddle 用于您的示例。 希望对你有帮助。