应该在提交时执行的功能不起作用

时间:2019-07-15 20:24:50

标签: javascript html

我正在设置网页(登录页面),用户应该在其中填写个人信息(就像常规登录页面一样),但是这里的主要目的是检查用户是否正确提交了他的数据,以及如果没有,他将收到警报消息通知。我的问题是由于某些原因有时起作用而有时不起作用的功能。

代码尚未完全完成,但是我无法继续遇到诸如我的基本错误

我试图在Stack Overflow和大量js教程中找到解决方案。尝试查找缺少的“;”或初学者可以做的任何其他基本错误。

function goSign() {
  var src = "signinpage.html"
  window.open(src);
}

function checkAge() {

  const x = document.forms["ageForm"]["age"].value;
  const regex = /^\d{2}$/;
  if (!x.match(regex)) {
    alert("Must input numbers not longer than 2 digits");
    return false;
  }
}

function checkUsern() {

  const username = document.forms["userForm"]["username"].value;
  const regex = /^[A-Za-z0-9]+$/;
  alert(
    return namelen);
  var minlen = 10;

  if (minlen > username.length) {
    alert("Your username must have atleast 10 characters");
    return false;
  }
}
<h1>Signin</h1>
<p>Please fill your details as requested</p><br>

<form name="nameForm" action="" onsubmit="return checkName()" method="post">
  Full Name:<br>
  <input type="text" name="fullname" />
</form>

<form name="ageForm" action="" onsubmit="return checkAge()" method="post">
  Age:<br>
  <input type="text" name="age" /><br>
  <input type="submit" value="Submit" />
</form>

<form name="userForm" action="" onsubmit="return checkUsern()" method="post">
  Username:<br>
  <input type="text" name="username" /><br>

</form>

这些功能的预期输出是,假设用户在其Age中输入了3位数字,因此应该提醒他“输入的数字不得超过2位”,但输入只会消失而没有任何反应。 与用户名相同。

注意:我的主要目标是仅执行1个提交按钮来检查所有用户的输入,但是我不知道该怎么做,因此我只为每个用户输入应用了一个函数和一个提交按钮,以确保功能正常工作正确地...

1 个答案:

答案 0 :(得分:0)

问题出在return checkName()处理程序的onsubmit中,供您输入

处理程序需要一个函数,因此您只需编写onsubmit="checkName"