使用javascript验证表单

时间:2018-01-18 20:49:47

标签: javascript

 function validateText1() {
    var txt = document.getElementById("Surname");
    var a = txt.value.search(/^[a-zA-Z]{2,}$/);
    if (a != 0) {
        alert("Invalid Text.\n")

        return false;
    }
    else return true;
}

我遇到了这个验证表单,但我不明白为什么它是a!=0,不应该是a==0,因为一个数字,表示第一次出现的指定位置搜索值,如果找不到匹配项,则为-1

3 个答案:

答案 0 :(得分:0)

从技术上讲,搜索功能会尝试在字符串中查找文本,并返回第一次出现的字符串的索引。

例如:

var txt = "This is a funny string";

var resultIndex = txt.search("funny");

// resultIndex will return 10

如果未找到,则返回-1。

它应该是if(a> = 0),但上面也可以。

答案 1 :(得分:0)

它是a != 0,因为它正在测试失败搜索,即报告"无效输入"并返回falsea == 0意味着搜索找到匹配项,在这种情况下输入有效并返回true

答案 2 :(得分:0)

搜索表明它将返回匹配开始位置的索引,因此如果它不是从0开始,则表示使用了特殊字符。

但是我永远不会用它来验证我的表格。匹配名称非常困难。