我目前正試圖限制用戶,使他們只能在文本框中輸入字母或數字,並且如果輸入了除字母或數字之外的任何其他字符,我想刪除該值。限制用戶輸入
所以我的正則表達式看起來像^[a-zA-Z0-9]+$
和整個jQuery函數如下所示:
$("#myInputField").keyup(function (e) {
if (/^[a-zA-Z0-9]+$/.test(this.value)) {
this.value = this.value.replace(/^[a-zA-Z0-9]+$/, '');
}
});
但這似乎反其道而行之。所以如果我輸入一個數字或字母,那麼它會被替換,並允許所有其他字符。有人可以告訴我我要去哪裏嗎?
使用否定字符類''.replace(/ [^ a-zA-Z0-9] +/g,'')' –
是的,當您要查找字母數字時,則會出現相反情況,然後刪除字母數字。我沒有試過這個(所以只是一個評論),但可能:'.replace(/ [^ a-zA-Z0-9]/g /,'');' –
而且測試將會是'if(/ test(this.value))'或'if(!(/^[a-zA-Z0-9] + $ /)。test(this.value)))[^ a-zA-Z0-9] ' –