A. js或者jquery如何禁止輸入法,讓輸入框只能處於英文狀態
CSS3有 ime-mode 屬性,可以打開或禁止輸入法,但只對IE和FF有效。
auto:不影響IME的狀態。
normal:正常的IME狀態
active:指定所有使用ime輸入的字元。即激活本地語言輸入法。用戶仍可以撤銷激活ime
inactive:指定所有不使用ime輸入的字元。即激活非本地語言。用戶仍可以撤銷激活ime
disabled:完全禁用ime。對於有焦點的控制項(如輸入框),用戶不可以激活ime
B. Js正則表達式限制不能輸入中文字元, /^[\u4e00-\u9fa5]+$/ 有英文或其他字元都會失效
正則表達式用法大全!希望能幫到你
C. js 求一個禁止輸入中文的正則表達式
var a = '士大夫333死神3333fff';
if (/[\u4E00-\u9FA5]/i.test(a)) {
alert('有中文');
}else{
alert('沒有中文 通過');
}
D. Js里怎麼在input框里禁止輸入某個文字
以下答案為純原生(vanilla Javascript)方法,實際可以用react、vue之類的庫,通過數據綁定的方法實現這種功能。我用的是ECMAScript6的寫法,其中let, const關鍵字老版本IE可能不識別,可以全部換成var。
在varfir=document.getElementById("fir")語句後面加入
function inputHandler (e) {
e.target.value = e.target.value.replace(/不/g, '')
}
let _debounceTimerId
function debounce (f, ms) {
const self = this
return function() {
const args = arguments
_debounceTimerId && clearTimeout(_debounceTimerId)
_debounceTimerId = setTimeout(function() {
f.apply(self, args)
}, ms)
}
}
fir.addEventListener('input', debounce(inputHandler, 50))
解釋:
1、使用HTMLInputElement實例的input事件,該事件在每次鍵入後都會觸發
2、中文輸入法在單次鍵入後,會多次觸發input事件,兩次觸發間隔大概在1-2ms左右
3、為了防止多次觸發,需要使用debounce(不知道怎麼翻譯,暫且用數字電路的「限制抖動」的概念吧),我上面寫了一個我自己編的debounce函數,實際可以用現成的庫函數,比如Lodash的_.debounce()
4、debounce(inputHandler, 100) 會保證抖動結束100ms後,運行inputHandler中的語句把"不"字去除。
E. jsp輸入框不能輸入特殊字元
jsp輸入框不能輸入特殊字元的原因:
1、標簽上直接替換方法:JS控制文本框只能輸入數字,JS控制文本框只能輸入數字、小數點,JS控制文本框只能輸入英文,JS控制文本框只能輸入英文、數字,JS控制文本框只能輸入中文,JS控制文本框只能輸入中文、英文、數字,JS控制文本框只能輸入中文、英文、數字、空格,JS控制文本框只能輸入中文、英文、數字、小數點。
2、輸入之後立即清除:驗證輸入框內不能輸入特殊字元,輸入就立刻清除。
3、如果是特殊字元,禁止輸入:驗證輸入框內不能輸入特殊字元,輸入前先作判斷。