2017-08-08 6 views
0

リクエストが正しく入力されるまで、エラーを即座に表示したいと考えています。それは私が、ユーザーは、彼がボタンをクリックせずに瞬時に入力された番号を取得したいということを意味します...ここで瞬間結果を使用した数値計算のオプション機能による即時検証

は私のコード(もJSFiddleで見つかった)次のとおりです。

HTML:

<input type="number" id="myNumber" value="Error"> 
    <button onclick="myFunction()">Click</button> 
<p id="Error"></p> 

JS:

window.myFunction = function() { 
var err = " is not 1000!" 
    var num = document.getElementById("myNumber").value; 
     if (num == 1000) { 
      alert("No Errors!"); 
     } else { 
      if (num !='') { 
      document.getElementById("Error").innerHTML = num+err; 
      } 
      else { 
      document.getElementById("Error").innerHTML = err; 
      } 
     } 
} 

私は数が計算されるまで、内部の機能を使用するように簡単な解決策を探しています、だけで何かを入力しながら、「1000ではありません」と表示するように、 1000以外(1,100,1001 110011など)も可能です。

+1

'<入力のonchange = "MyFunctionを()" // ...' – chiliNUT

答えて

0

あなたが入力ボックスのkeyupイベントにmyFunction()を呼び出すことができます。

window.myFunction = function() { 
 
var err = " is not 1000!" 
 
    var num = document.getElementById("myNumber").value; 
 
    if (num == 1000) { 
 
     alert("No Errors!"); 
 
     document.getElementById("Error").innerHTML = ""; 
 
    } else { 
 
    \t \t if (num !='') { 
 
     document.getElementById("Error").innerHTML = num+err; 
 
     } 
 
     else { 
 
     document.getElementById("Error").innerHTML = err; 
 
     } 
 
    } 
 
}
<input type="number" id="myNumber" onkeyup="myFunction()" value="Error"> 
 
    <button onclick="myFunction()">Click</button> 
 
<p id="Error"></p>

1
$("#myNumber").on("input",myFunction); 

クリックを待つのではなく、入力しないでください。アッパーはjqueryの、純粋なJSである:

document 
    .getElementById("myNumber") 
    .addEventListener("input",myFunction); 

またはインライン:

oninput="myFunction()" 
関連する問題