当前位置:  开发笔记 > 编程语言 > 正文

语义UI正则表达式解析器似乎无法正常工作

如何解决《语义UI正则表达式解析器似乎无法正常工作》经验,为你挑选了1个好方法。

在我的信用卡结帐表格中,我有以下内容:

    $('#checkout-info')
        .form({
            on     : 'blur',
            fields : {
                    id_cc_num : {   identifier: 'id_cc_num',
                                    optional: true,
                                    rules: []},
                    id_cc_CVC : {   identifier: 'id_cc_CVC',
                                    optional: true,
                                    rules: [{   type: 'regExp[/\d{3,4}/]',
                                                prompt: 'CVC must be three or four digits'}]},
                    id_cc_month : { identifier: 'id_cc_month',
                                    optional: true,
                                    rules: [{   type: 'integer[1..12]',
                                                prompt: 'MM must be a two-digit month designator - 01 thru 12'}]},
                    id_cc_year : {  identifier: 'id_cc_year',
                                    optional: true,
                                    rules: [{   type: 'integer[2016..2036]',
                                                prompt: 'Year must be at least 2016'}]},
            inline : 'true'
        });

除了regExp验证之外,所有显示的验证都能正常工作.正则表达式/\d {3,4} /通过www.regexr.com中的正则表达式测试,但它不会通过语义regExp测试.如果CVC字段上的regExp替换为以下内容,那么它可以工作,但我更喜欢正则表达式的简洁:

rules: [{   type: 'minLength[3]',
            prompt: 'CVC must be three or four digits'},
        {   type: 'maxLength[4]',
            prompt: 'CVC must be three or four digits'}]},

Goran Mottra.. 5

由于regExp表达式是字符串的一部分,因此您需要使用双反斜杠转义反斜杠\\,以及前导^$忽略较大数字中的匹配模式.结果模式将是:

'regExp[/^\\d{3,4}$/]'

$(function() {
  $('#checkout-info').form({
    on: 'blur',
    fields: {
      id_cc_CVC: {
        identifier: 'id_cc_CVC',
        optional: true,
        rules: [{
          type: 'regExp[/^\\d{3,4}$/]',
          prompt: 'CVC must be three or four digits'
        }]
      },
    },
    inline: 'true'
  });
});






1> Goran Mottra..:

由于regExp表达式是字符串的一部分,因此您需要使用双反斜杠转义反斜杠\\,以及前导^$忽略较大数字中的匹配模式.结果模式将是:

'regExp[/^\\d{3,4}$/]'

$(function() {
  $('#checkout-info').form({
    on: 'blur',
    fields: {
      id_cc_CVC: {
        identifier: 'id_cc_CVC',
        optional: true,
        rules: [{
          type: 'regExp[/^\\d{3,4}$/]',
          prompt: 'CVC must be three or four digits'
        }]
      },
    },
    inline: 'true'
  });
});




推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有