为什么我的Javascript验证不起作用? 函数formValidator(){ //快速引用我们的字段 var username=document.getElementByName('username'); var password=document.getElementByName('password'); var email=document.getElementByName('email'); //按表单中显示的顺序检查每个输入! 如果(isAlphanumeric(用户名,“请仅使用您的用户名的字母和数字”){ if(长度限制(用户名,8,12)){ if(长度限制(密码,6,15)){ 如果(emailValidator(电子邮件,“请输入有效的电子邮件地址”)){ 返回true; } } } } 返回false; } 函数是alphanumeric(elem,helperMsg){ var alphaExp=/^[0-9a-zA-Z]+$/; if(元素值匹配(alphaExp)){ 返回true; }否则{ 警报(helperMsg); 元素焦点(); 返回false; } } 功能长度限制(元素、最小值、最大值){ var uInput=元素值; 如果(uInput.length>=min&&uInput.length

为什么我的Javascript验证不起作用? 函数formValidator(){ //快速引用我们的字段 var username=document.getElementByName('username'); var password=document.getElementByName('password'); var email=document.getElementByName('email'); //按表单中显示的顺序检查每个输入! 如果(isAlphanumeric(用户名,“请仅使用您的用户名的字母和数字”){ if(长度限制(用户名,8,12)){ if(长度限制(密码,6,15)){ 如果(emailValidator(电子邮件,“请输入有效的电子邮件地址”)){ 返回true; } } } } 返回false; } 函数是alphanumeric(elem,helperMsg){ var alphaExp=/^[0-9a-zA-Z]+$/; if(元素值匹配(alphaExp)){ 返回true; }否则{ 警报(helperMsg); 元素焦点(); 返回false; } } 功能长度限制(元素、最小值、最大值){ var uInput=元素值; 如果(uInput.length>=min&&uInput.length,javascript,validation,getelementsbyname,Javascript,Validation,Getelementsbyname,document.getElementByName('username');返回数组或名为username的元素…那么也添加索引…即document.getElementByName('username')[0] 应该是这样的: <script type='text/javascript'> function formValidator(){ // Make quick references to our fields var username = document.getEleme

document.getElementByName('username');返回数组或名为username的元素…那么也添加索引…即document.getElementByName('username')[0]

应该是这样的:

<script type='text/javascript'>
function formValidator(){
// Make quick references to our fields
var username = document.getElementByName('username');
var password = document.getElementByName('password');
var email = document.getElementByName('email');

// Check each input in the order that it appears in the form!
    if(isAlphanumeric(username, "Please only use letters and numbers for you username.")){
        if(lengthRestriction(username, 8, 12)){
            if(lengthRestriction(password, 6, 15)){
                if(emailValidator(email, "Please enter a valid email address")){
                            return true;
                }
            }
        }
    }


return false;
}


function isAlphanumeric(elem, helperMsg){
var alphaExp = /^[0-9a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
    return true;
}else{
    alert(helperMsg);
    elem.focus();
    return false;
}
}

function lengthRestriction(elem, min, max){
var uInput = elem.value;
if(uInput.length >= min && uInput.length <= max){
    return true;
}else{
    alert("Please enter between " +min+ " and " +max+ " characters");
    elem.focus();
    return false;
}
}

function emailValidator(elem, helperMsg){
var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(elem.value.match(emailExp)){
    return true;
}else{
    alert(helperMsg);
    elem.focus();
    return false;
}
}
document.getElementByName('username');返回名为username的数组或元素…因此也添加索引…即document.getElementByName('username')[0]

应该是这样的:

<script type='text/javascript'>
function formValidator(){
// Make quick references to our fields
var username = document.getElementByName('username');
var password = document.getElementByName('password');
var email = document.getElementByName('email');

// Check each input in the order that it appears in the form!
    if(isAlphanumeric(username, "Please only use letters and numbers for you username.")){
        if(lengthRestriction(username, 8, 12)){
            if(lengthRestriction(password, 6, 15)){
                if(emailValidator(email, "Please enter a valid email address")){
                            return true;
                }
            }
        }
    }


return false;
}


function isAlphanumeric(elem, helperMsg){
var alphaExp = /^[0-9a-zA-Z]+$/;
if(elem.value.match(alphaExp)){
    return true;
}else{
    alert(helperMsg);
    elem.focus();
    return false;
}
}

function lengthRestriction(elem, min, max){
var uInput = elem.value;
if(uInput.length >= min && uInput.length <= max){
    return true;
}else{
    alert("Please enter between " +min+ " and " +max+ " characters");
    elem.focus();
    return false;
}
}

function emailValidator(elem, helperMsg){
var emailExp = /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(elem.value.match(emailExp)){
    return true;
}else{
    alert(helperMsg);
    elem.focus();
    return false;
}
}

getElementByName
不是
文档
对象的有效方法。您需要
getElementsByName
,它将返回具有指定
name
属性的元素集合,或者
getElementById()
它将返回具有指定
id
属性的单个元素

var username = document.getElementByName('username')[0];
var password = document.getElementByName('password')[0];
var email = document.getElementByName('email')[0];

getElementByName
不是
文档
对象的有效方法。您需要
getElementsByName
,它将返回具有指定
name
属性的元素集合,或者
getElementById()
它将返回具有指定
id
属性的单个元素

var username = document.getElementByName('username')[0];
var password = document.getElementByName('password')[0];
var email = document.getElementByName('email')[0];

<没有> DOM方法“GETelEntByNAMEY”,您可能想考虑使用“代码> > GETelEngsByNAME/<代码> < /P> < P>不存在DOM方法“GETelEntByNAMEY”,您可以考虑使用<代码> GETelEnMyBID或<代码> GETELMENTSMENBYAME< <代码>

< P>该方法被称为代码> GETELMENTSMSBYNAME< /COD>(请注意代码中缺少的s),正如复数形式所示,它返回一个包含所有匹配元素的数组。如果每个名称只有一个项,则只需从数组中提取第一个项即可

现在,此方法返回DOM节点。如果您不知道节点是什么,请将其视为HTML标记。您无法验证标记,需要提取其
属性

这些更改将反映如下(无错误检查):


建议您找到浏览器的JavaScript控制台,以便获得有关语法错误的通知,或者更好地使用Firefox+Firebug。

该方法称为
getElementsByName
(请注意代码中缺少的s)而且,正如复数形式所示,它返回一个包含所有匹配元素的数组。如果每个名称只有一个项,则只需从数组中获取第一个项

现在,此方法返回DOM节点。如果您不知道节点是什么,请将其视为HTML标记。您无法验证标记,需要提取其
属性

这些更改将反映如下(无错误检查):


建议您找到浏览器的JavaScript控制台,以便获得有关语法错误的通知,或者更好地使用Firefox+Firebug。

我已将代码更改为..var username=document.getElementByName('username')[0];var password=document.getElementByName('password')[0];var email=document.getElementByName('email')[0];是否正确?我已将代码更改为..var username=document.getElementByName('username')[0];var password=document.getElementByName('password')[0];var email=document.getElementByName('email')[0];是否正确?“不工作”这不是一个非常有用的问题描述。请尝试添加一些信息,说明问题出在哪里以及运行脚本时看到的消息。但是我没有收到任何错误消息,我已经详细说明了问题。JavaScript验证没有验证..不起作用?什么标题更好?可能是ike:“我的JavaScript验证函数不阻止提交无效数据”,尽管问题很可能是“我的JavaScript验证函数触发语法错误”;-)欢迎使用StackOverflow。例如,在IE中运行此脚本会显示消息“对象不支持此属性或方法”在第一行。尝试找出它不起作用的地方。在浏览器中打开脚本调试并跟踪函数的执行-在通过时查看变量的值。“不起作用”这不是一个非常有用的问题描述。请尝试添加一些信息,说明问题出在哪里以及运行脚本时看到的消息。但是我没有收到任何错误消息,我已经详细说明了问题。JavaScript验证没有验证..不起作用?什么标题更好?可能是ike:“我的JavaScript验证函数不阻止提交无效数据”,尽管问题很可能是“我的JavaScript验证函数触发语法错误”;-)欢迎使用StackOverflow。例如,在IE中运行此脚本会显示消息“对象不支持此属性或方法”在第一行。尝试找出它不起作用的地方。在浏览器中打开脚本调试并跟踪函数的执行情况-在通过时查看变量的值。好的。可以使用multip