2016-12-15 7 views
0

Immer wenn ich auf meine Schaltfläche klicken, es immer sagt "Bitte geben Sie eine E-Mail", obwohl es Text in der Box ist. Was mache ich falsch? Ich sehe, dass die ID für das Passwort falsch ist. Jetzt werde ich versuchen, die Variablen in die Funktion zu setzen.Eingabe Text Wert Zeichenfolge Validierung in Javascript

var emailText = document.getElementById("Email").value; 
var emailErrorMessage = document.getElementById("emailError"); 
var passwordText = document.getElementById("Password").value; 
var passwordErrorMessage = document.getElementById("passwrodError"); 
var button = document.getElementById("submit"); 

function buttonValidation1(){ 
    var text; 

    if (emailText === "") { 
     text = "Please enter an email"; 
    }else{ 
     text = "Email OK"; 
    } 

    emailErrorMessage.innerHTML = text; 
} 

button.addEventListener("click", buttonValidation1); 


    <!DOCTYPE html> 
    <html> 
     <head> 

     </head> 
    <!--<body> 
     <p>Please input a number between 1 and 10:</p> 

     <input id="numb"> 

     <button type="button" id="submit">Submit</button> 

     <p id="demo"></p> --> 

     <label>Email: &nbsp; &nbsp; &nbsp;</label> 
     <input type="text" id="Email"></input><span id="emailError"></span> 
     <br/> <br/> 

     <label>Password:</label> 
     <input type="password" id="Password"></input> 
     <spanid="passwordError"></span> 
     <br/> 
     <input type="submit" id="submit"></input> 
     <script src="Form.js"></script> 
     </body> 
     </html> 
+1

Fügen Sie HTML-Code bitte. –

+0

3 === bedeutet booleschen Vergleich, vielleicht nur 2, wenn Sie einen String-Vergleich machen wollen. – Cagy79

+0

'passwrodError'? –

Antwort

2

Verschieben Sie alle Variable in Körperfunktion

 function buttonValidation1(){ 

     var emailText = document.getElementById("Email").value; 
     var emailErrorMessage = document.getElementById("emailError"); 
     var passwordText = document.getElementById("Password").value; 
     var passwordErrorMessage = document.getElementById("passwrodError"); 
     var button = document.getElementById("submit"); 

     var text; 

     if (emailText === "") { 
      text = "Please enter an email"; 
     } 

     else { 
      text = "Email OK"; 
     } 

emailErrorMessage.innerHTML = text; 

    } 
    button.addEventListener("click", buttonValidation1); 
+0

Ich denke, das wird es beheben, weil der emailText gesetzt wird, wenn die Funktion aufgerufen wird, bevor sie definiert ist. –

+0

Ja, das hat es behoben. Aber ich weiß nicht, was ich mit den drei Gleichheitszeichen machen musste, um es zum Laufen zu bringen. Es gab mir einen Fehler, wenn ich nur zwei Gleichheitszeichen verwendete und gleich "" setzte. Es würde mir erlauben, zwei gleiche Zeichen und –

+0

"" mit einem Leerzeichen zwischen den Anführungszeichen zu verwenden. –