2015-01-04 4 views
-4

본인은 제 웹 사이트의 로그인을 시도하고 있으며 이미 제공된 링크가 존재하는지 테스트 한 결과 리디렉션이 작동했습니다. 왜 작동하지 않는지 모르겠다! 나는 그것이 작동하지 않습니다 이유를 알아 내려고 사방 보였다HTML 로그인이 작동하지 않습니다.

<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>login2</title> 
    <meta charset="utf-8" /> 
</head> 

<body> 
    <input class="textBox" id="pass" type="password" maxlength="30" required/> 
    <button type="button" onclick="a()">Login</button> 
    <script> 
     function a() { 
      var i = document.getElementById('pass') if (i == "1234") { 
       window.location = "in.html" 
      } else { 
       window.location = 
        "index.html" 
      } 

     } 
     } 
    </script> 
</body> 
</html> 

: 다음은 코드입니다. 제발 도와주세요!

+0

죄송합니다. 각 줄 앞에있는 '>'는이 사이트의 텍스트 편집기 때문이었습니다! –

+1

코드의 형식을 지정하면 여분의'}'가 있음이 매우 분명합니다. – dfsq

+1

나는 PHP 로그인 시스템을 먼저 배울 것을 요청한다. –

답변

1

대신이 스크립트를 사용해보십시오. 전체 스크립트 블록을 대체하십시오. 세미콜론이 누락되었습니다. 그리고 @ dfsq 언급 및 추가}. 그리고 @spencer가 말했듯이 암호 텍스트를 얻으려면 .value가 필요합니다.

<script> 
    function a() { 
     var i = document.getElementById('pass').value; 
     if (i == "1234") { 
      window.location = "in.html"; 
     } 
     else { 
      window.location = "index.html"; 
     } 
    } 
</script> 

클라이언트 측 도구로 조작 할 수 있으므로 클라이언트에서 암호를 확인하지 않는 것이 좋습니다.

+0

자세한 정보로 업데이트되었습니다. –

+0

좋아요! 자바 스크립트에서 세미콜론은 대부분 선택 사항입니다. 그 (것)들을 가지지 않아도 코드에 해를 끼치 지 않습니다. –

+0

예. 나는 동의한다. 특히 독창적 인 것처럼 한 행에 둘 이상의 명령문이있는 경우 가독성이 향상됩니다. –

0
<!DOCTYPE html> 
<html lang="en"> 
<head> 
    <title>login2</title> 
    <meta charset="utf-8" /> 
    <script src="//code.jquery.com/jquery-1.11.2.min.js" type="text/javascript"></script> 
</head> 
<body> 
    <form id="loginForm" method="post"> 
     <input class="textBox" id="pass" type="password" maxlength="30" required/> 
     <input type="submit" name="submit" value="login"> 
    </form> 
    <script> 
     $('#loginForm').on('submit', function(e) { 
      e.preventDefault(); 
      var i = $('#pass').val(); 
      if (i == "1234") { 
       window.location = "in.html"; 
      } else { 
       window.location = "index.html"; 
      } 
     }); 
    </script> 
</body> 
</html> 
+0

OP가 jQuery를 사용하지 않습니다. –

+0

이러한 종류의 솔루션에 대한 jQuery는 과도한 작업입니다.이 경우 전체 jQuery 라이브러리를로드해야하기 때문에 성능이 저하됩니다. – greenfox

+0

이 양식이 그가 사용한 적이있는 유일한 것이라면 - 어쩌면 나는 의심 스럽습니다. 게다가, 이것은 위의 것보다 훨씬 훌륭하고 전문적인 방법입니다. – CLECode

관련 문제