javascript - 使用 JavaScript/jQuery 对数组进行表单验证

标签 javascript jquery forms

我在 Stack 上看到了几个答案,但没有一个详细说明这是如何工作的。目前我有一个简单的表单,其中包含用户名和密码表单,它适用于预定义的值,但当值在数组中时不起作用。我想使用 JS 来验证密码和用户名都匹配数据点作为表单中的字符串的表单。据我所知,我下面的代码没有错误,但我的逻辑语句没有触发正确的条目。我怎样才能解决这个问题? (我包括了 jQuery,因为我在那个领域知道一点,如果它有帮助,我会接受它。)

<!DOCTYPE html>
 <html>
  <head>
    <title>Coding Project</title>
  </head>
  <body style="font-family:Helvetica">
    <h1>
    Simple Login Form:
    </h1>
    <form>
      <input type="text" id="username" placeholder="Enter username" value=""> <br> <br>
      <input type="password" id="password" placeholder="Enter password" value=""> <br> <br>
      <button type="button" onClick="mySubmit()"> Submit
      </button>
    </form>
     <script type="text/javascript">
     	function mySubmit() {
      	var userNameInput = document.getElementById("username").value;
        var passWordInput = document.getElementById("password").value;
        var existingUserName = [["46179"], ["55678"]];
        var existingPassWord = [["helloworld123"], ["helloworld456"]];
        if (userNameInput == existingUserName && passWordInput == existingPassWord) {
        	alert("Correct Username");
        } else if (userNameInput == "" && passWordInput == "") {
        	alert("Empty field, please enter Username and Password or Signup");
        } else {
        	alert("Incorrect Username or Password");
        }
      }
     </script>
  </body>
 </html>

最佳答案

我刚刚更正了您的情况,请检查一下:(如果用户名和密码都在现有数组中找到,则会触发警告“不正确的用户名或密码”)

注意:如果不能满足您的要求,请告诉我。

<!DOCTYPE html>
 <html>
  <head>
    <title>Coding Project</title>
  </head>
  <body style="font-family:Helvetica">
    <h1>
    Simple Login Form:
    </h1>
    <form>
      <input type="text" id="username" placeholder="Enter username" value=""> <br> <br>
      <input type="password" id="password" placeholder="Enter password" value=""> <br> <br>
      <button type="button" onClick="mySubmit()"> Submit
      </button>
    </form>
     <script type="text/javascript">
     	function mySubmit() {
      	var userNameInput = document.getElementById("username").value;
        var passWordInput = document.getElementById("password").value;
        var existingUserName = ["46179", "55678"];
        var existingPassWord = ["helloworld123", "helloworld456"];
        if (!existingUserName.includes(userNameInput) && !existingPassWord.includes(passWordInput)) {
        	alert("Correct Username");
        } else if (userNameInput == "" && passWordInput == "") {
        	alert("Empty field, please enter Username and Password or Signup");
        } else {
        	alert("Incorrect Username or Password");
        }
      }
     </script>
  </body>
 </html>

关于javascript - 使用 JavaScript/jQuery 对数组进行表单验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58307131/

相关文章:

javascript - 如何在 jQuery 中同时使用 OR 和 .find() ?

javascript - 变量做作或 IF 语句 IE 问题

javascript - 在新标签页中打开一个页面并在旧窗口中加载不同的 URL

python - 提交表单,并在python中使用mechanise获取结果

javascript - else if 语句在变量分配中的效率

javascript - React 路由器和 props

javascript - 自定义 ng-filter 用于匹配范围内的日期值

javascript - 如何更改图片标题的 CSS?

javascript - $.each 无法将数据附加到 formData() ,尽管已填充键值

javascript - 将数据从模态插入数据库