使用正则表达式输入验证

时间:2013-10-22 05:14:30

标签: javascript regex validation

我正在尝试使用正则表达式验证PHP页面输入,但我在这里完全是新的,需要一些帮助

<script>
    function addplaces()
    {

        valid=true;
        placename=document.getElementById("placename").value;

        city=document.getElementById("city").value;
        province=document.getElementById("province").value;
        country=document.getElementById("country").value;
        category=document.getElementById("category").value;
        placepicture=document.getElementById("placepicture").value;
        descp=document.getElementById("descp").value;


        if(placename=="" || preg_match("^[A-Z]'?[- a-zA-Z]( [a-zA-Z])*$", placename))
        {
            alert("Please Enter Place Name");
            document.getElementById("placename").focus();
            valid=false;
        }

        else if(city=="")
        {
            alert("Please Enter City Name");
            document.getElementById("city").focus();
            valid=false;
        }

        else if(province=="")
        {
            alert("Please Enter province Name");
            document.getElementById("province").focus();
            valid=false;
        }

        else if(country=="")
        {
            alert("Please Enter country Name");
            document.getElementById("country").focus();
            valid=false;
        }

        else if(category=="")
        {
            alert("Please Enter category Name");
            document.getElementById("category").focus();
            valid=false;
        }

        else if(placepicture=="")
        {
            alert("Please Enter place picture");
            document.getElementById("placepicture").focus();
            valid=false;
        }

        else if(descp=="")
        {
            alert("Please Enter Description");
            document.getElementById("descp").focus();
            valid=false;
        }

        return valid;
   }

</script>

我尝试使用preg_match();但它不起作用,请让我知道我在哪里犯了错误。

1 个答案:

答案 0 :(得分:1)

preg_match适用于PHP,这就是为什么它无法在 javascript 代码中使用。

而不是preg_match("^[A-Z]'?[- a-zA-Z]( [a-zA-Z])*$"(如果您使用PHP进行编程,那么您错过了)

使用

var regex = new Regex( /^[A-Z]'?[- a-zA-Z]( [a-zA-Z])*$ );
if(regex.test(placename)) { ... }