我想阻止用户使用特殊字符,我已经可以阻止用户输入这些字符了,但我也试图阻止特殊字符的粘贴。 FIDDLE
请注意:我允许使用西里尔语,拉丁语和土耳其语字符。
JS:
$('input').bind('input', function() {
var c = this.selectionStart,
r = /[^a-zA-Za-åa-ö-w-я 0-9/@!"#¤?¨'_.,]/,gi
v = $(this).val();
if(r.test(v)) {
$(this).val(v.replace(r, ""));
c--;
}
this.setSelectionRange(c, c);
});
答案 0 :(得分:0)
$(document).ready(function(){
$('.inputClass')..keypress(function (e) {
//Change Regex according to Your need to allow
var regex = new RegExp("^[a-zA-Z]+$");
var key = String.fromCharCode(!e.charCode ? e.which:e.charCode);
if (!regex.test(key)){
e.preventDefault();
return false;
}
});
$('.inputClass').bind("keyup paste",function(e){
var txtValue = $(this).val();
//Change your Regex according to your need to block while pasting
if (/^[a-zA-Z]+$/.test(txtValue) == false){
e.preventDefault();
}
});
});
答案 1 :(得分:-1)
试试这段代码。请参阅演示 JsFiddle
的链接$(document).ready(function()
{
$('input').on("keyup paste",function(e)
{
var txtValue = $(this).val();
if (/^[a-zA-Z0-9- ]*$/.test(txtValue) == false)
{
$(this).val('');
}
});
});
$('input').bind('keypress', function (event)
{
var regex = new RegExp("^[a-zA-Z0-9]+$");
var key = String.fromCharCode(!event.charCode ? event.which:event.charCode);
if (!regex.test(key))
{
event.preventDefault();
return false;
}
});