0

* キーボードからの入力を無視したい。次のコードを試しています。しかし、警告を発した後。「*」はテキストボックスに印刷されています

「*」を無視するにはどうすればよいですか?

私のhtmlコード

 <input name="filterTextField" type="text" id="filterTextField" tabindex="2"  style="width: 240px;
    position: absolute; top: 1px; left: 1px; z-index: 2;border:none;" onkeypress="asteriskValidation(event)" />

私のJavaスクリプト

function asteriskValidation(event){ 
 var textValue = document.getElementById('filterTextField').value;
var charCode = (event.which) ? event.which : event.keyCode;
                        if (charCode == 42)
                            { 
                                alert("asterix not allowed");
                                textValue = '';
                                return false;
                            }
                                else
                            {       
                                return true;
                            }
             }                  
4

4 に答える 4

1

onkeypress値イベントを返す必要があります。試す:

<input name="filterTextField" type="text" id="filterTextField" tabindex="2"  style="width: 240px;
    position: absolute; top: 1px; left: 1px; z-index: 2;border:none;" onkeypress="return asteriskValidation(event)" />

DEMO FIDDLE

于 2013-10-03T05:50:57.397 に答える
0

この方法を試してください:

デモ

 $("#filterTextField").keypress(function (evt) {
      var keycode = evt.charCode || evt.keyCode;
      if (keycode  == 42) { //Enter key's keycode
        alert("asterix not allowed");
        return false;
     }
 });
于 2013-10-03T05:53:10.040 に答える
0

textfield 要素へのアクセス方法を修正しました。

リセットするだけの場合は、ブール値を返す必要はありません。

試す

function asteriskValidation(event){   
    var text = document.getElementById('filterTextField'); 
    var charCode = (event.which) ? event.which : event.keyCode;
    if (charCode == 42)
    { 
       alert("asterix not allowed");
       text.value = '';
    }
}
于 2013-10-03T05:53:55.013 に答える
0

以下のような関数を作る

$("input").keypress(function (event) {
  var keycode = event.charCode || event.keyCode;
  if (keycode  == 42) {
    return false;
 }
});
于 2013-10-03T05:59:15.160 に答える