2017-06-01 87 views
0

我有一个“media_topic”正则表达式,它应该允许字符和空格,并且它应该允许空数据,因为它不是必填字段。当我提交时没有输入任何手段,它应该允许提交,但它正在发生。如何在字段不是必填字段时允许提交空字段

下面是我的代码,

$(document).ready(function(){ 
    $.validator.addMethod('media_topic', function(value, element) { 
    var regex = new RegExp("^[a-zA-Z][a-zA-Z0-9,_-\\s]*$"); 
    var key = value; 

    if (!regex.test(key)) { 
    return false; 
    } 
    return true; 
}, "Please valid media topic."); 

回答

1

尝试使用在你的正则表达式的交替,允许对没有输入:

var regex = new RegExp("^[a-zA-Z][a-zA-Z0-9,_\\s-]*|$"); 

的基本思路是:

^(some pattern)|$ 

Demo

+0

它不工作 – Mohan

+0

@莫汉你原来的正则表达式有其他问题。检查演示,你会看到我的模式接受空输入。 –

+0

我只使用过urs,但它不起作用 – Mohan

0

尝试添加

ignore: ".ignore" 

当字段为空的附加类.IGNORE它 如果不为空,然后删除类

希望这有助于。

+0

在哪里添加该类? – Mohan

+0

html元素 –

+0

像这样, –

0

在执行正则表达式之前,最好先检查您的值是否为空。

例如 if (value == "") {return True;}