JS控制input 文本框只允许输入汉字

onblur="value=value.replace(/[^/u4E00-/u9FA5]/g,'')"
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^/u4E00-/u9FA5]/g,''))">
<input type="text" size="30" maxlength="11" value="" onblur="value=value.replace(/[^u4E00-u9FA5]/g,'')" 
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^u4E00-u9FA5]/g,''))">

onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^d]/g,''))"

onbeforepaste 意思是在用户执行粘贴动作之前。
clipboardData.setData('text', xxx)  是把xxx的内容复制到剪贴板

clipboardData.getData('text')  是读出当前剪贴板里的内容,

.replace(/[^d]/g,'')  是正则替换,把里面除了数字以外的字符全部都去掉,

整个语句的功能是,每当用户执行粘贴操作前,先取出剪贴板的内容字符串,删除不是数字的字符,只保留数字,然后再粘贴,而不是直接粘贴

by 小鬼PSer

原文地址:https://www.cnblogs.com/php-qiuwei/p/7852735.html