繁体   English   中英

magento结帐页面中的总体国家电话号码验证

[英]Overall country telephone number validation in magento checkout page

magento结帐页面中的整体国家电话号码验证

我在js / prototype / validation.js中添加电话号码validate.js的正则表达式

['validate-phoneStrict',
 'Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.',
 function(v)
 {
     return Validation.get('IsEmpty').test(v)
         || /\(?([0-9]{4})\)?([ .-]?)([0-9]{3})\2([0-9]{4})/.test(v);
 }
],

我需要整个国家的正则表达式,.....请帮助我

HTML代码

<input type="text" name="telephone" id="telephone" value="<?php echo $this->htmlEscape($this->getFormData()->getTelephone()) ?>" title="<?php echo $this->__('Telephone') ?>" class="input-text validate-numeric-contact" />

js代码添加到下面的billing.phtml中

<script type="text/javascript">
    //<![CDATA[

if(Validation) {
        Validation.addAllThese([
        ['validate-numeric-contact','Enter correct mobile number',
        function(v){
        var timePat ="^((\+){0,1}91(\s){0,1}(\-){0,1}(\s){0,1}){0,1}9[0-9](\s){0,1}(\-){0,1}(\s){0,1}[1-9]{1}[0-9]{7}$";
        // var matchArray = v.match(timePat);
        if(v.length > 0){
        if(v.length !=10){
            return false;
           }else if(v[0] != 9 || v[1] != 1 ){

            //return false;
           }else if(v[2]!=9 && v[2]!=8 && v[2]!=7){

            return false;
           }


        return true;

        }else {
        return false;
        }

        }
        ]])};
        var dataForm = new VarienForm('form-id', true);

//]]>

</script>  

请在网站上搜索相关问题。

什么正则表达式将匹配有效的国际电话号码? 这包含您需要的正则表达式。

一个适合您的解决方案示例是:

[ 'validate-phoneStrict',
  'Please enter a valid phone number. For example (123) 456-7890 or 123-456-7890.',
  function(v)
  {
      return Validation.get('IsEmpty').test(v)
          || /\+(9[976]\d|8[987530]\d|6[987]\d|5[90]\d|42\d|3[875]\d|2[98654321]\d|9[8543210]|8[6421]|6[6543210]|5[87654321]|4[987654310]|3[9643210]|2[70]|7|1)\d{1,14}$/.test(v);
  }
]

我在上面的问题中使用了可接受的答案,而未自己测试。 请同时阅读该页上的最后一个答案,以了解此正则表达式的注意事项

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM