2017-02-18 68 views
0

我已经编写了用于客户端验证的JavaScript代码,然后用于后端,我使用了servlet。 Javascript代码不起作用,并从JSP注册页面直接转到servlet。为什么在servlet的操作之前Javascript代码不工作?

下面是代码:

function teacherValidateForm() { 
 

 

 

 
    var tuid = document.getElementById("tuname"); 
 

 
    return validateTID(tuid); 
 

 

 
} 
 

 
function validateTID(tuid) { 
 
    var message = "Username must start with a letter and must be of minimum 5 letters"; 
 
    if (!tuid.match(/^[[A-Za-z][A-Za-z0-9/._]*]{5,}$/)) { 
 
    document.getElementById(ti).innerHTML = message; 
 

 
    return false; 
 
    } else return true; 
 
}
<head> 
 
</head> 
 

 
<body> 
 
    <form name="teachersignup" class="form-horizontal" action="tsignup" onsubmit="return teacherValidateForm()" method="POST"> 
 
    <div class="form-group"> 
 
     <label for="tuname" class="control-label col-md-4" style="color:#000; font-size:15px" id="username">User Name: </label> 
 
     <div class="col-md-4"> 
 
     <input type="text" class="form-control" id="tuname" required="true" name="tusername" />&nbsp; <label id="ti"></label> 
 
     </div> 
 
    </div> 
 

 

 
    <div class="col-md-12 text-center"> 
 
     <button type="submit" class="btn btn-success">Submit</button> 
 
    </div> 
 
    </form>

回答

0

你应该写JS代码在

的window.onload()

它加载所有的JS文件当窗口打开时

+0

因为提交按钮被触发时将调用该函数。你不需要这样做。事实上,我几乎可以说这是错误的/与这个问题无关 – ochi

1

这里的问题是

var tuid = document.getElementById("tuname"); 

将其更改为

var tuid = document.getElementById("tuname").value;