2016-04-27 21 views
1

入力された数値が整数でない場合、以下の関数を使用してアラートを生成しています。しかし、私はまた、HTML形式をクリアする必要があります。私はid.value= "";を使ったが、うまくいかなかった。任意の提案は歓迎されている:あなたがidのvalueプロパティに空の文字列を設定しているアラートが生成された後にHTML入力タグをクリアする方法

function myFunction(id) { 
 
    var x = parseInt(document.getElementById(id).value); 
 
    if (!(x === parseInt(x, 10))) { 
 
    alert("Empployee ID can be integer numbers only."); 
 
    id.value = ""; 
 
    } else { 
 

 
    } 
 
}
<div class="header1"> 
 
    <input type="text" id="ename" onblur="myFunction('ename')" name="name" placeholder="Enter Employee ID" required="" /> 
 
</div>

+0

-1私は、コードのいくつかのデバッグにするためにあなたを示唆している:(下品にconsole.logを) 、またはすべての主要なブラウザに含まれているjavascriptデバッガを使用すると、問題が発生する可能性があります。 – reallynice

答えて

0

idstringです。したがって、id属性が関数の引数と等しい文書のどこかに空の文字列を置く必要はありません。

あなたが使用する必要があります。

document.getElementById(id).value = ""; 
+0

ありがとうございます。できます。 – user3250190

+0

@ user3250190なぜそれが機能していないのか知っていれば幸いです。それが助けられたら私の答えを受け入れてください:) –

2

あなたid.valueは、HTML要素ではありません。ので、あなたがid.value を使用することはできません

document.getElementById(id).value = 'VALUE'; 

function myFunction(id) { 
 
    
 
    var x = parseInt(document.getElementById(id).value); 
 
    
 
    if (!(x === parseInt(x, 10))) { 
 
    
 
    alert("Empployee ID can be integer numbers only."); 
 
    document.getElementById(id).value = ""; 
 
    } 
 
    else { 
 

 
    } 
 
}
<div class="header1"> 
 
    <input type="text" id="ename" onblur="myFunction('ename')" name="name" placeholder="Enter Employee ID" required="" /> 
 
</div>

0

:あなたはこの"ename".value

のようなものは、これを試してみてください... id変数のvalueプロパティへのアクセスを取得しようとしていますあなたの関数に渡されたidは文字列でした。すでにidを通過したので その後、多分あなたは使用することができます。

document.getElementById(id).value = "";

回答の説明

+0

こんにちはと歓迎するスタックオーバーフロー。これは質問に答えるかもしれませんが、OPのコードがなぜ機能しなかったのか、あなたのコードがそれを修正する理由を説明できるかどうかをOPが理解するのに役立ちます。 –

関連する問題