Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 正在尝试验证表单_Javascript_Forms_Validation - Fatal编程技术网

Javascript 正在尝试验证表单

Javascript 正在尝试验证表单,javascript,forms,validation,Javascript,Forms,Validation,尝试学习JavaScript,取得了不错的进展,我想,但我一直在验证表单,试图看看是否有人有同样的问题,搜索没有发现任何东西。你能帮帮我吗 var minlength = 6; var pwlength = document.getElementById('psswrd'); var invalid = " "; function validate() { if (pwlength.length < minlength && pwlength == in

尝试学习JavaScript,取得了不错的进展,我想,但我一直在验证表单,试图看看是否有人有同样的问题,搜索没有发现任何东西。你能帮帮我吗

    var minlength = 6;
var pwlength = document.getElementById('psswrd');
var invalid = " ";

function validate() {

    if (pwlength.length < minlength && pwlength == invalid) {
        alert("Password not valid");

    else { 
        alert("Password okay!");
    }
}

submitbtn.onClick = validate();
var minlength=6;
var pwlength=document.getElementById('psswrd');
var无效=”;
函数验证(){
if(pwlength.length
var minlength=6;
var pwlength=document.getElementById('psswrd');
var无效=”;
函数验证(){
if(pwlength.length
您在这里遇到了一些问题

1)
pwlength.length
不会让您走多远。
pwlength
等于html对象,而不是html对象的值。将实际变量更改为以下值,您应该会得到正确的结果:

var pwlength = document.getElementById('psswrd').value;
2) 在
if…else
语句的
else
部分之前,您需要用一个小括号(
}
)结束
if
语句。将该部分更改为以下内容:

} else {
3) 检查长度
==invalid
是否为奇数的验证。再检查一遍,然后把它处理掉

4) 您的onclick事件需要如下所示:

submitbtn.onclick = function(){ validate() };
注意:小写的事件关键字和
function(){…}围绕要运行的函数进行包装。

  • 这是不明显的,你称之为-我已经包装在一个窗口。onload
  • 您无法正确访问该按钮。两个
    document.forms[0]。提交
    
    document.getElementById(“submitbtn”)
    document.getElementsByName(“submitbtn”)[0]
    将根据您命名或标识按钮的方式工作,但是不要将onclick处理程序分配给submit按钮,而是将submit处理程序分配给表单
  • 对于单个空间没有测试的意义,因为它至少少于6个字符
  • &&是和,你是说| |还是
  • onclick必须全部为小写
  • 将onclick分配给validate的结果,而不是validate
  • 你没有停止提交
我已经把头发修剪好了 我假设表单具有ID=“form1”

window.onload=function()
document.getElementById(“form1”).onsubmit=validate;
}
if(typeof String.prototype.trim!=='function'){//
String.prototype.trim=函数(){
返回此。替换(/^\s+|\s+$/g,');
}
}
函数验证(){
var minlength=6;
var pw=document.getElementById('psswrd');
if(pw.value.length
它应该是
var pwlength=document.getElementById('psswrd').value
better
var pwlength=document.getElementById('psswrd').value.length
您的变量
pwlength
应始终为
0
。相反,
pwval
的声明应该在
pwlength
之前,并且
pwlength
的值应该等于
pwval.length
。当然,在这么短的生命周期内,你真的认为有必要为这样的事情定义变量吗?太好了——也花了一段时间找到所有的问题。祝您的JS研究顺利实际上,如果您查看变量名称,我建议
var pwlength=document.getElementById('psswrd').value.length
此代码将不起作用-您没有访问字段的值
submitbtn.onclick = function(){ validate() };
window.onload=function()
  document.getElementById("form1").onsubmit = validate;
}

if(typeof String.prototype.trim !== 'function') { // let's help older IEs
  String.prototype.trim = function() {
    return this.replace(/^\s+|\s+$/g, ''); 
  }
}

function validate() {
  var minlength = 6;
  var pw = document.getElementById('psswrd');
  if (pw.value.length < minlength || pw.value.trim() == "") {
    alert("Password not valid");
    pw.focus();
    return false;
  }
  return true; // allow submission  
}