有很多方法啊,基本就是js+正则:
1.
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
2.
<input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">
3.
<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
1.
<input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')">
2.
<input name=txt1 onchange="if(/\D/.test(this.value)){alert('只能输入数字');this.value='';}">
3.
<input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')">
解决方案 »
- jQuery mobile开发iPad应用,怎么调用C#写的Web Service?
- asp.ent中div随着鼠标移动
- 文本框是生成的,用户在文本框中输入数据后再到服务器端运算...
- 正则表达式~~~
- 求一个脚本?
- 在首页使用js调用时,怎样让整个页面先显示,然后再进行js调用显示相关的内容,而不是等待js调用结束一起显示.
- 用javascript如何实现这样滴功能?应该很简单,想听听大家的思路!在线等!
- 请问点击注册之后怎样转到下一个页面
- 用JAVAScript怎么读取指定目录下的Cookie
- 大佬帮帮忙
- 怎么样把值赋给内嵌页面中的DROPDOWN控件呀
- 主问vml中group中的矩形长度在屏幕上有多长
set re = new RegExp
re.Pattern = "^[0-9]*$"
{
if ( !isCharsInBag( s, "0123456789"))
{
window.alert("只能包含0123456789" + "请重新输入" );
return false;
}
}
function isCharsInBag (s, bag)
{
var i;
for (i = 0; i < s.length; i++)
{
var c = s.charAt(i);
if (bag.indexOf(c) == -1) return false;
}
return true;
}
匹配双字节字符(包括汉字在内):[^\x00-\xff]用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"用正则表达式限制只能输入数字:onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
若要判断只是0-9的数字那就得重新写函数了:
function isNumber(str)
{
alert("str 是否为纯数字?\r\n"+ /\D/.test(str));
return /\D/.test(str);
}