我无法在JavaScript中使用以下Regex示例。正则表达式有效,已在某些测试正则表达式的网站上进行过测试。

我希望它检查输入的格式是否为:xxx,xxx,xxx
它一直在警告错误的输入。谢谢你的帮助。

        var re = /[0-9a-zA-Z]+(,[0-9a-zA-Z]+)*/;
        var toValidation = document.getElementsByName("txtSerial").value;
        alert(toValidation);
        if(!re.test(toValidation))
            return true;
        else
        {
            alert("Please insert valid text.");
            return false;
        }

最佳答案

document.getElementsByName("txtSerial")将返回该名称的所有元素(节点集合)。节点集合没有名为value的属性,因此.value将为undefined(可以从警报中看到)。

根据您的标记,您将需要使用

document.getElementById("txtSerial")


要么

document.getElementsByName("txtSerial")[0]


(尽管最后一个当然不理想)。

10-07 14:40