我想限制用户
spaces
在<input>
我尝试了下面的代码片段,但它没有给我1
&amp;的结果。 4
。
$(function() {
$('.alphaonly').on('input', function() {
$(this).val(function(i, val) {
return val.replace(/^\d|[A-Z\s]+/g, '');
});
});
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="lorem" class="alphaonly">
答案 0 :(得分:1)
$(function() {
var haveFirst = false;
$('.alphaonly').on('keypress', function (event) {
if( $(this).val().length === 0 ) {
haveFirst = false;
}
var regex = new RegExp("^[a-z0-9_]+$");
var first = new RegExp("^[a-z]+$");
var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
if(!first.test(key) && haveFirst == false){
event.preventDefault();
return false;
}else if(regex.test(key)){
haveFirst = true;
}
if (!regex.test(key)) {
event.preventDefault();
return false;
}
});
})
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input name="lorem" class="alphaonly">
&#13;
答案 1 :(得分:0)
试试这个 https://developer.android.com/training/volley/index.html
此正则表达式^ [A-Za-z0-9 _] + $仅允许带下划线的名称。
答案 2 :(得分:0)
这里我将这用于某种类型的utf-8
$("YourClassorIdOfInputOrTextField").bind("keypress", function (event) {
if (event.charCode!=0) {
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;
}
}
});
这将实现你所寻求的陌生人
答案 3 :(得分:0)
这是基于正则表达式的函数的简单替换:
function blockSpecialChar(e) {
return /[^A-Za-z0-9._]/.test(e);
}