2014-03-26 4 views
0

URL에 다음 코드로 로그인 할 수있었습니다. 로그인 세부 사항이 틀리면 나에게 경고하고 올바른 때 로그인합니다.URL이 변경되면 스크립트가 작동하지 않습니다.

URL이 약간 변경되었습니다. 지금 로그인 할 수 없습니다. 입력 메시지가 잘못되었다는 경고 메시지가 표시되지 않습니다. 아무 반응이 없습니다.

이 잘 작동했다

올드 URL : http://softwarehuttest.x10.mx/public/account/login/?id=notmyid&password=notmypassword

아무 일도 발생하지

새로운 URL : http://softwarehuttest.x10.mx/public/account/login/?id=notmyid&password=notmypassword&rank=22

순위는 항상 같은 번호가 될 것입니다 (22 그냥 예입니다); 따라서 사용자가 입력하지 않아도됩니다. 방금 문제가되는지 테스트하기 위해 순위에 대한 의견을 추가했지만 문제는 지속됩니다.

로그인 세부 정보가있는 URL을 브라우저에 직접 입력하면 작동합니다.

URL을 변경하기 전에 코드가 정상적으로 작동했다는 점을 고려해도 잘못된 것은 아닙니다. 제발 조언. 고맙습니다.

<html> 

    <script> 
    $(document).on("pageinit", "#loginForm", function() { 
     $("#form1").on("submit", function (event) { 
      event.preventDefault(); 

      $.ajax({ 
       type: "GET", 
       url: "http://softwarehuttest.x10.mx/public/account/login/", 
       data: $("#form1").serialize(), 
       success: function (data) { 
        console.log(data); 
        if (data.loggedIn) { 
         $.mobile.changePage("#home"); 
        } else { 
         alert("You entered the wrong username or password. Please try again."); 
        } 
       } 
      }); 
     }); 
    }); 
    </script> 

    <div data-role="page" id="loginForm" data-theme="e"> 
      <!--Start of Log In Page--> 
      <header data-role="header"> 
       <h1>Log In</h1> 
      </header> 

      <!--OLD FORM--> 
      <form id="form1" name="form1" method="GET" action="http://softwarehuttest.x10.mx/public/account/login/"> 
       <label for="id">Username </label> 
       <input type="text" name="id" id="id" /> 

       <label for="password">Password </label> 
       <input type="password" name="password" id="password" /> 

       <label for="rank">Rank </label> 
       <input type="rank" name="rank" id="rank" /> 

       <input type="submit" name="submit" value="Login"/>  
      </form> 

      <footer data-role="footer" data-position="fixed"> 
       <h1></h1> 
      </footer> 
     </div> 
</html> 
+1

사용자 이름과 암호로 GET을 사용하지 말 것을주의합니다. – zsaat14

+0

보안상의 이유로? –

+0

오류 콜백을 추가하고 어떤 오류 코드가 표시되는지 확인하십시오. https://api.jquery.com/jQuery.ajax/ URL을 변경 했으므로 404 또는 유사 할 수 있습니다. – zsaat14

답변

0

JSFiddle에서 코드를 테스트 한 결과 분명히 작동합니다. 당신은 단순히 "숨기기"는 순위 입력, 당신은 대신 22

<input type="hidden" name="rank" id="rank" value="22"> 
설정 값으로 TEXT 숨겨진 입력 유형을 사용할 수 있습니다하려면

: "{"loggedIn "거짓}"나는 응답을 얻었다

+0

올바른 응답이 될 것입니다. 이것은 이상합니다 .. 귀하의 바이올린에 대한 링크를 얻을 수 있습니까 –

+0

물론 http://jsfiddle.net/jN2XU/ – xtylo

관련 문제