2017-07-25 1 views
0

Wie würde ich Benutzereingabe von HTML nehmen und es auf eine Variable in Javascript setzen?Wie nehme ich Benutzereingaben in HTML und setze sie als Variable in js?

Dies ist, was ich versuche zu implementieren:

<p> 
    <label>how old are you?</label> 
    <form id="form" onsubmit="return false;"> 
     <input style=position:absolute;top:80%;left:5%;width:40%; type="number" id="userInput"> 
     <input style=position:absolute;top:50%;left:5%;width:40%; type="submit" onclick="age()"> 
    </form> 
    <script type="text/javascript"> 
     function age() 
     { 
     var input = document.getElementById("userInput"); 
     alert(input); 
     } 
     if(age<20) 
     { 
     alert(YOU ARE UNDER 20) 
     } 
    </script> 
    </p> 
+0

Verwendung doppelte Anführungszeichen in Ihrem 'alert', wenn Ihr einen String zB Druck:' alert ("SIE UNTER 20 ")' –

+0

@T. Ou Sie speichern den Eingabewert in Variableneingabe, aber Sie überprüfen mit if (Alter <20). So müssen Sie ändern, wenn (Eingabe <20). Auch müssen Sie drucken, verwenden Sie doppelte Queues. Alarm ("SIE SIND UNTER 20") – Dhaarani

+0

@T. Außerdem haben Sie die Eingabe in die Variable gespeichert, nicht den Wert. Sie müssen also den folgenden Code verwenden document.getElementById ("userInput"). Value; – Dhaarani

Antwort

2

Mit reinem JavaScript:

var input = document.getElementById('userInput'); 
alert(input.value); 

Mit jQuery:

var input = $('#userInput'); 
alert(input.val()); 

Um das zu erreichen, was Sie wollen:

function age() { 
    var input = document.getElementById('userInput'); 
    var age = parseInt(input.value); 

    if(age < 20) { 
    alert('YOU ARE UNDER 20'); 
    } 
} 
0

, was Sie erreichen wollen? wenn Sie Alter überprüfen, dann bewegen, wenn innerhalb Funktion

function age() 
    { 
    var age = document.getElementById("userInput").value; 
    if(age<20) 
    { 
     alert("YOU ARE UNDER 20") 
    } 
    } 
1

Es gibt einige Probleme in Ihrem Code mögen. Ich werde sie erklären. 1. Sie erstellen ein var input = document.getElementById("userInput"); Aber danach in Ihrem alert(input) gibt es das gesamte Objekt anstelle des Eingabewerts zurück. 2. Danach vergleichen Sie das Alter, das nicht definiert ist, weil Sie var age = input; nicht erstellt haben. Wenn Sie den Eingang < 20 vergleichen, wird es funktionieren. In Ihrer Warnung haben Sie keine doppelten Anführungszeichen ("") verwendet, um eine Zeichenfolge zu erstellen und diese Zeichenfolge zu alarmieren. Ich hoffe es ist jetzt klarer.

 function age() 
 
     { 
 
     var age = document.getElementById("userInput").value; 
 
     alert(age); 
 
     
 
     if(age<20) { alert("YOU ARE UNDER 20"); } 
 
     } 
 
    
<p> 
 
    <label>how old are you?</label> 
 
    <form id="form" onsubmit="return false;"> 
 
     <input style=position:absolute;top:80%;left:5%;width:40%; type="number" id="userInput"> 
 
     <input style=position:absolute;top:50%;left:5%;width:40%; type="submit" onclick="age()"> 
 
    </form> 
 
</p>

0

Versuchen unter

function age() 
 
     { 
 
     var input = document.getElementById("userInput").value;  
 
     if(input<20) { alert("YOU ARE UNDER 20"); } 
 
     }
<p> 
 
    <label>how old are you?</label> 
 
    <form id="form" onsubmit="return false;"> 
 
     <input type="number" id="userInput"> 
 
     <input style=position:absolute;top:50%;left:5%;width:40%; type="submit" onclick="age()"> 
 
    </form> 
 
</p>

Verwandte Themen