【问题标题】:Laravel VueJS Address Validation RegExp not workingLaravel Vue JS地址验证正则表达式不起作用
【发布时间】:2021-01-07 16:32:18
【问题描述】:

在我的 Laravel 6.18 项目中,我使用 Webpack 管理器设置了 VueJS。

我正在做客户端验证,以在申请表中验证用户的街道地址。

我正在使用 VueJS 的 VeeValidate 库进行验证,我们可以在其中提供 RegExp 以及由 | 符号分隔的 required 验证。

现在,当我尝试在申请表中使用正则表达式 [\w',-\\/.\s] 并进行必要的字符转义如下时,它会在浏览器的控制台选项卡中显示错误 SyntaxError: Invalid regular expression: /^[\w'/: Unterminated character class

<input type="text"
    id="address"
    name="address"
    v-validate="'required|regex:^[\\w\'\,\-\/\.\\s]*$|max:75'"
    class="browser-default"
    required v-model="address"
    @blur="$emit('local-storage', 'address', address)"/>
<span class="missing-alert" v-show="errors.has('address')">Enter valid address</span>

在 Vue 文档文本框代码中使用上述正则表达式时,谁能帮助理解语法错误是什么?

【问题讨论】:

  • 试试v-validate="'required|regex:/^[\\w\\/.\\',\\s-]*$/|max:75'"
  • 这不起作用,同样的错误..
  • 可能是v-validate="'required|regex:/^[\\w\\/.\\x27,\\s-]*$/|max:75'"?

标签: regex laravel vue.js laravel-6 vee-validate


【解决方案1】:

使用另一种形式来指定您的规则 - 一个对象,如下所示:

v-validate="{ required: true, regex:/^[\\w\'\,\-\/\.\\s]*$/, max:75 }"

【讨论】:

    猜你喜欢
    • 2014-04-21
    • 2016-08-01
    • 2016-12-21
    • 1970-01-01
    • 1970-01-01
    • 2019-03-28
    • 2021-08-18
    • 2011-07-14
    • 2012-04-17
    相关资源
    最近更新 更多