正则表达式验证规则电话字段

时间:2018-06-06 12:18:30

标签: javascript jquery regex

在我的手机字段中,我想添加一些手机验证

我的尝试:

HTML

<input type="phone" name="phone" id="phone" title="phone" class="input-text" data-validate="{required:true, 'validate-phone':true}">

JS

<script type="text/javascript">
    require([
        'jquery', // jquery Library
        'jquery/ui', // Jquery UI Library
        'jquery/validate', // Jquery Validation Library
        'mage/translate', // Magento text translate (Validation message translte as per language)
        'mage/mage'
    ], function($){
        $.validator.addMethod(
            'validate-phone', function (value) {
                return (value !== 'okey'); // Validation logic here
            }, $.mage.__('Please enter a correct format number.'));

    });
</script>

这样,当我在电话栏中输入okey时,我收到错误消息"Please enter a correct format number." juste。

我想在用户时做同样的事情:

  • 保持字段为空。

  • 请勿输入10位数字。

  • 并且不要从06或07开始。

我的正则表达式:/^0(6|7)[0-9]{8}$/我不知道如何归还。

1 个答案:

答案 0 :(得分:0)

你可以试试这个:

<script type="text/javascript">
    require([
        'jquery', // jquery Library
        'jquery/ui', // Jquery UI Library
        'jquery/validate', // Jquery Validation Library
        'mage/translate', // ...
        'mage/mage'
    ], function($){
        $.validator.addMethod(
            'validate-phone', function (value) {
                // Test against your Regex
                return /^0(6|7)[0-9]{8}$/.test(value);
            }, $.mage.__('Please enter a correct format number.'));

    });
</script>

更多信息here

旁注:+33612345678也是有效的电话号码(替代0612345678