2017-05-07 59 views
-2

美好的一天我是webdev的新手。我試圖創建一個項目,在那裏有一個登錄表單,用戶將輸入他們的用戶名和密碼。每當按鈕被點擊時,它將顯示一條消息登錄成功,如果用戶名和密碼沒有存儲在XML中它將顯示登錄失敗!!有人能告訴我什麼是代碼的錯誤嗎?登錄不斷有警報消息登錄失敗,當按鈕被點擊。下面是代碼。提前感謝您的幫助。登錄失敗總是

<!DOCTYPE HTML> 
<html lang="en-US"> 
    <head> 
    </head> 
    <body> 
     <form id="frmlogin" name="frmlogin" method="post" action="Login" onsumbit="return false;"> 
      <p>ENTER USER NAME <input type="text" name="login_username" id="username"></p> 
      <p> ENTER PASSWORD <input type="password" name="login_pass" id="password"><br><br> 
       <input type="button" class="button" value="Log in" onclick="login()"> 
      </p> 

     </form> 
     <script>    
      window.login = function(e) 
      { 

       if (document.frmlogin.login_username.value == "") 
       { 
        alert("User name is not blank"); 
        return; 
       } 
       else if(document.frmlogin.login_pass.value == "") 
       { 
        alert("Password is not blank"); 
        return; 
       } 

       else 
       { 
        var xhttp = new XMLHttpRequest(); 
        xhttp.onreadystatechange = function() { 
         if (this.readyState == 4 && this.status == 200) { 
         myFunction(this); 
        } 
       }; 
       xhttp.open("GET", "user.xml", true); 
       xhttp.send(); 
       } 
       function myFunction(xml) { 
        var xmlDoc = xhttp.responseXML; 

        var ktra=true; 
        var xml=xmlDoc.childNodes[0].childNodes[1]; 

        var name = xml.childNodes["username"];   
        var pass=xml.childNodes["password"]; 
        for(var i=0;i<xml.childNodes.length;i++){ 
         if(xml.childNodes[i].nodeName="username") 
          name = xml.childNodes[i]; 
         if(xml.childNodes[i].nodeName="password") 
          pass = xml.childNodes[i]; 
        } 
        if(name.textContent==frmlogin.login_username.value &&pass.textContent==frmlogin.login_pass.value) 
        { 
         ktra=true;   

        } 
        else 
        { 
         ktra=false; 
        } 

        if(ktra==true) 
        { 
         alert("Login Successfully !!!"); 
        } 
        else 
        { 
         alert("Login Failed !!!"); 
        } 
       } 
      } 
     </script> 
    </body> 
</html> 

這是XML代碼

<users> 
    <user> 
     <username>A</username> 
     <password>12345</password> 
    </user> 
</users> 
+2

您已經發布了一次。絕對沒有理由再次發佈相同的問題。如果你的其他問題沒有得到答案,那是因爲它寫得不好,你應該回去編輯它來改進它,而不是再次發佈它。 –

+0

您是在本地測試還是使用服務器? – Manngo

回答

-2

你需要&&和條件之間的空間,在你if檢查比較用戶名和密碼。