如何控制JSP页面上的文本框只能输入数字,或只能输入字母,或只能输入特定字符,谢谢
[code="html"]
[/code]
你想找的是正则表达式?
http://deerchao.net/tutorials/regex/regex.htm
使用正则表达式 用javascript实时校验
用正则了。。。。
[code="java"] function replaceNumKeyUp(obj) {
obj.value = obj.value.replace(/[^0-9]/g,'');
}[/code]
var nameReg=/^[a-z,A-Z,0-9,_]$/;
只允许数字、26个英文字母或者下划线组成的字符串
看看正则表达式吧,蛮简单的,呵呵
使用正则表达式监听文本域的ONKEYUP事件
常用HTML正则表达式
[code="java"] 1.只能输入数字和英文的:
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
ID="Text1" NAME="Text1">
2.只能输入数字的:
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
ID="Text2" NAME="Text2">
3.只能输入全角的:
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"
ID="Text3" NAME="Text3">
4.只能输入汉字的:
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"
ID="Text4" NAME="Text4">[/code]
onbeforepaste:监听执行粘贴操作前事件
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
整个语句的功能是,每当用户执行粘贴操作前,先取出剪贴板的内容字符串,删除不是数字的字符,只保留数字,然后再粘贴,而不是直接粘贴
你也可以不要这个事件 ,只监听onkeyup事件 ,只是用户 通过复制粘贴可能不能控制
自定义标签最后肯定都会转换成HTML的INPUT元素,该元素就可以有这种onbeforepaste事件 ,,你可能得问你们公司开发这个标签 的人怎么把这个事件放上去而以,