js 有关验证性问题

来源:互联网 发布:linux 找不到命令 编辑:程序博客网 时间:2024/04/25 14:00
  1. /* 
  2.  *只能输入数字 
  3.  *使用在obj的onkeyup事件上 
  4.  *@param obj 当前DOM对象 
  5.  *@author:raozhiyong 
  6.  */   
  7. function onlyNumber(obj){  
  8.     obj.value = obj.value.replace(/\D/g, '');  
  9. }  
  10.   
  11. /* 
  12.  *只能输入正整数和小数 
  13.  *使用在obj的onkeyup事件上 
  14.  *@param obj 当前DOM对象 
  15.  *@author:raozhiyong 
  16.  */   
  17. function onlyDecimal(obj){  
  18.     //先把非数字的都替换掉,除了数字和.  
  19.     obj.value = obj.value.replace(/[^\d.]/g,"");  
  20.     //必须保证第一个为数字而不是.  
  21.     obj.value = obj.value.replace(/^\./g,"");  
  22.     //保证只有出现一个.而没有多个.  
  23.     obj.value = obj.value.replace(/\.{2,}/g,".");  
  24.     //保证.只出现一次,而不能出现两次以上  
  25.     obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".");  
  26.       
  27.     //obj.value=obj.value.replace(/[^\d\.]*$/g, ''); //没有排除多个.的情况  
  28. }  
  29.   
  30. /* 
  31. *只能输入中文 
  32. *使用在obj的onkeyup事件上 
  33. *@param obj 当前DOM对象 
  34. *@author:raozhiyong 
  35. */    
  36. function onlyChinese(obj){  
  37.     obj.value = obj.value.replace(/[^\u4E00-\u9FA5]/g,'');  
  38.     //onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))"   
  39. }  
  40.   
  41. /* 
  42. *只能输入中文和字母 
  43. *使用在obj的onkeyup事件上 
  44. *@param obj 当前DOM对象 
  45. *@author:raozhiyong 
  46. */    
  47. function onlyNumAndEn(obj){  
  48.     obj.value = obj.value.replace(/[^a-zA-Z\d]/g,'')  
  49. }  
  50.   
  51. /* 
  52. *只能输入字母 
  53. *使用在obj的onkeyup事件上 
  54. *@param obj 当前DOM对象 
  55. *@author:raozhiyong 
  56. */    
  57. function onlyEnglish(obj){  
  58.     obj.value = obj.value.replace(/[^a-zA-Z]/g,'')  
  59. }  
  60.   
  61. //ENTER键可以让光标移到下一个输入框:<input onkeydown="if(event.keyCode==13)event.keyCode=9" >  
  62. //屏蔽了输入法:<input style="ime-mode:disabled">