我的正则表达式javascript验证似乎没有工作

时间:2016-01-05 12:17:09

标签: javascript regex

我正在尝试验证文本框以查看它是否包含数字和特殊字符,但出于某种原因,我的代码似乎不起作用:

$arr1 = array(
    array('layout_id' => 1, 'element_id' => 1),
    array('layout_id' => 1, 'element_id' => 2),
    array('layout_id' => 1, 'element_id' => 4),
    array('layout_id' => 1, 'element_id' => 5),
    array('layout_id' => 1, 'element_id' => 6),
);

$arr2 = array(
    array('layout_id' => 1, 'element_id' => 1),
    array('layout_id' => 1, 'element_id' => 2),
    array('layout_id' => 1, 'element_id' => 5),
);

$intersect = array_uintersect($arr1, $arr2, 'customCompare');

function customCompare($val1, $val2) {
    if ($val1['layout_id'] == $val2['layout_id'] && $val1['element_id'] == $val2['element_id']) {
        return 0;
    } else {
        return *any number, exept 0*;
    }
}

这是我调用函数的地方:

<script>
    function validation(){
        var firstname = $("#Fname").val();
        if(firstname.match(/^[A-Za-z]*/)){
            return true;
        }
        else{
            alert("Invalid name!");
            return false;
        }
    };
</script>

我的代码中可能出现什么问题?

1 个答案:

答案 0 :(得分:0)

您可以使用jquery执行以下操作:

var str = $('#Search').val();
if(/^[a-zA-Z0-9- ]*$/.test(str) == false) {
   alert('Your search string contains illegal characters.');
}

来自this post

的参考资料