我在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/

10-12 00:25
查看更多