簡體   English   中英

如何防止表格中的所有特殊字符

[英]How to prevent all special characters in a form

因此,我試圖防止某種形式的所有特殊字符。 我只需要數字和字母字符。 由於某些原因,如果我只有“ 232 elm”,則下面的JavaScript總是顯示特殊字符事件。

我也想使用句號或感嘆號。 我主要是在嘗試防止這些問題。 我們有喜歡使用度數符號而不是拼寫“度數”的用戶。

無論鍵入什么,此代碼始終顯示警報。

var alphanumers = /^[a-zA-Z0-9]+$/;

if(!alphanumers.test($("#notes").val())){
   alert('You have special characters on instructions field.');
   e.preventDefault();
   return false;
}

這對我有用:

HTML:

<h1>DEMO1</h1>
<input type="text" id="data" name="data" onkeyup="checkInput()">


<h1>DEMO2</h1>
<form action="#" method="post" onsubmit="return checkForm(this)">
 <input type="text" id="data2" name="data" value="123abc+-*/">
 <input type="submit">
</form>

Javascript:

DEMO1:
    function checkInput(){
        var testit = $('#data').val();
        if( /[^a-zA-Z0-9\-\/]/.test( testit ) ) {
           $('#data').css('background', '#f00');
        }else{
           $('#data').css('background', '#fff');
        }
    }

DEMO2:
    function checkForm( theForm ){
        var testit = $('#data2').val();
        if( /[^a-zA-Z0-9\-\/]/.test( testit ) ) {
           $('#data2').css('background', '#f00');
            return false;
        }else{
           $('#data2').css('background', '#fff');
            return true;
        }
    }

演示: http//codesheet.org/codesheet/dMslCMmZ

我完全喜歡這個腳本!

$("input").keydown(function (e) {
    // Allow: backspace, delete, tab, escape, enter and .
    if ($.inArray(e.keyCode, [46, 8, 9, 27, 13, 110, 190]) !== -1 ||
         // Allow: Ctrl+A
        (e.keyCode == 65 && e.ctrlKey === true) ||
         // Allow: Ctrl+C
        (e.keyCode == 67 && e.ctrlKey === true) ||
         // Allow: Ctrl+X
        (e.keyCode == 88 && e.ctrlKey === true) ||
         // Allow: home, end, left, right
        (e.keyCode >= 35 && e.keyCode <= 39)) {
             // let it happen, don't do anything
             return;
    }
    // Ensure that it is a number or alphabet and stop the keypress
    if ((e.shiftKey || (e.keyCode < 48 || e.keyCode > 90)) && (e.keyCode < 96 || e.keyCode > 105)) {
        e.preventDefault();
    }
});

這是stackoverflow的原始資源,它的輸入用於停止除nubers之外的任何東西,我對此做了一些修改,希望對您有所幫助!

嘗試jsfiddle

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM