首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >禁止在input中输入中文

禁止在input中输入中文

作者头像
崔笑颜
发布于 2020-06-08 07:50:56
发布于 2020-06-08 07:50:56
4.5K01
代码可运行
举报
运行总次数:1
代码可运行

方法一:用文本框的CSS属性ime-mode实现。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 <input onpaste="return false" ondragenter="return false"  style="ime-mode:disabled"> 

提示:设置ime-mode为disabled的意思是禁止在输入时禁止用户激活输入中文,韩文,日文等的输入法(IME)状态,因为这个只能检测到键盘的输入,对通过鼠标操作的粘贴和拖放无效。

方法二:在松开按键时用脚本检查文本框的值,只保留Unicode编码在0和255之间的字符。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script> 
function check(str){ 
var temp="" 
for(var i=0;i<str.length;i++) 
     if(str.charCodeAt(i)>0&&str.charCodeAt(i)<255) 
        temp+=str.charAt(i) 
return temp 
} 
</script> 
<input onpaste="return false" ondragenter="return false"  onkeyup="this.value=check(this.value)"> 

方法三:把所有双字节字符替换为空。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<input onpaste="return false" ondragenter="return false"  onkeyup="this.value=this.value.replace(/[^/x00-/x80]/gi,’’)">   

方法四:把中文字符替换为空。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<input onpaste="return false" ondragenter="return false"  onkeyup="this.value=this.value.replace(/[/u0391-/uFFE5]/gi,’’)"> 

特别提示  本例代码运行后,第一种方法是不能切换输入法,所以无法输入中文,其它三种方法是在输入中文后立即被替换为空,同时禁止了粘贴和拖放事件。   

特别说明

本例主要是css属性ime-mode和对中文或双字节字符的判断应用。  ime-mode 设置输入方法编辑器(IME)的状态。  charCodeAt返回指定位置上字符的 Unicode 编码值。 

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-07-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
屏蔽(禁止)鼠标右键代码「建议收藏」
<body oncontextmenu=”return false” onselectstart=”return false” ondragstart=”return false” onbeforecopy=”return false” onmouseup=document.selection.empty() oncopy=document.selection.empty() onselect=document.selection.empty()></body>
全栈程序员站长
2022/09/07
3.1K0
如何限制input输入类型
1.只能输入和粘贴汉字 <input onkeyup="value=value.replace(/1/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/2/g,''))"><br/> <input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')" onbeforepaste="clipboardData.setData(
小柒2012
2018/04/13
2.6K0
网站设计:20个常用技巧
用户11605835
2025/04/23
1770
网站设计:20个常用技巧
input文本框输入时正则判断
1、只能输入数字 文本框只能输入数字代码(小数点也不能输入) 方式一: <input type="text"name="number" id="number" value="1" maxlength="8" title="nb" onkeyup="value=value.replace(/[^\d]/g,'')" onbeforepaste="c
Java帮帮
2018/12/18
1.7K0
input文本框输入时正则判断
前端问题汇总
在默认情况下,input文本框和图片无法自然对齐,总会有所偏差,文本框往往会比图片要往下边一点,只要给元素添加vertical-align:bottom即可令两者底部水平对齐,代码如下:
雨临Lewis
2022/01/11
2.8K0
Java判断输入的String是否为中文方法总结
Java用的是Unicode 编码char 型变量的范围是0-65535 无符号的值,可以表示 65536个字符,基本上地球上的字符可被全部包括了,实际中,我们希望判断一个字符是不是汉字,或者一个字符串里的字符是否有汉字来满足业务上的需求,String类中有个这样的方法可得到其字符长度length() ,看下面例子, 
张拭心 shixinzhang
2022/05/06
2.2K0
input输入框内容规范正则总结
input type=text 只能输入数字(去掉e和小数点): <input type="number" onkeydown="return event.keyCode !== 69" /> <input type="text" onkeydown="return ( event.ctrlKey || event.altKey || (47<event.keyCode && event.keyCode<58 && event.shiftKey===false) || (95<event.
Daotin
2020/09/08
1.5K0
总结收藏的41个JavaScript实用技巧
在文件的根目录放进去这个图片,后缀修改成ico就可以了 6. 可以在收藏夹中显示出你的图标
csxiaoyao
2019/02/18
1.6K0
动手写个数字输入框3:痛点——输入法是个魔鬼
前言  最近在用Polymer封装纯数字的输入框,开发过程中发现不是坑,也有不少值得研究的地方。本系列打算分4篇来叙述这段可歌可泣的踩坑经历: 《动手写个数字输入框1:input[type=number]的遗憾》 《动手写个数字输入框2:起手式——拦截非法字符》 《动手写个数字输入框3:痛点——输入法是个魔鬼》 《动手写个数字输入框4:魔鬼在细节——打磨光标位置》 IE的先进性  辛辛苦苦终于控制只能输入数字了,但只要用户启用了输入法就轻松突破我们的重重包围:-<心碎得一地都是。这是我们会想到底有没有一个A
^_^肥仔John
2018/01/18
1.1K0
一些实用的 Javascript 代码
本文由来源 21aspnet,由 javajgs_com 整理编辑,其版权均为 21aspnet 所有,文章内容系作者个人观点,不代表 Java架构师必看 对观点赞同或支持。如需转载,请注明文章来源。
Java架构师必看
2021/03/22
4630
实用的JS代码段(表单篇)
整理了下比较实用的Javascript代码段,完整的代码参考 1 多个window.onload方法   由于onload方法时在页面加载完成后,自动调用的。因此被广泛的使用,但是弊端是只能实用onload执行一个方法。下面代码段,可以保证多个方法在Onload时执行: function addLoadEvent(func){ var oldonload = window.onload; if(typeof window.onload != 'function'
用户1154259
2018/01/17
2.2K0
appium+python自动化39-adb输入中文(ADBKeyBoard)
上一篇提到“adb shell input textyoyo“ 可以通过adb 输入英文的文本,由于不支持unicode编码,所以无法输入中文,github上有个国外的大神写了个ADBKeyBoard输入法的apk,完美支持unicode编码,也能输入中文和其它字符了
上海-悠悠
2018/07/25
2.7K0
appium+python自动化39-adb输入中文(ADBKeyBoard)
javascript常用判断写法
js验证表单大全,用JS控制表单提交 ,javascript提交表单 目录: 1:js 字符串长度限制、判断字符长度 、js限制输入、限制不能输入、textarea 长度限制  2.:js判断汉字、判断是否汉字 、只能输入汉字 3:js判断是否输入英文、只能输入英文 4:js只能输入数字,判断数字、验证数字、检测数字、判断是否为数字、只能输入数字 5:只能输入英文字符和数字 6: js email验证 、js 判断email 、信箱/邮箱格式验证 7:js字符过滤,屏蔽关键字 8:js密码验证、判断密码  2.1: js 不为空、为空或不是对象 、判断为空 、判断不为空  2.2:比较两个表单项的值是否相同 2.3:表单只能为数字和”_”, 2.4:表单项输入数值/长度限定 2.5:中文/英文/数字/邮件地址合法性判断 2.6:限定表单项不能输入的字符 2.7表单的自符控制 2.8:form文本域的通用校验函数
全栈程序员站长
2021/12/27
1.6K0
JavaScript学习笔记(二)
JavaScript的事件机制:事件是JavaScript和DOM交互的桥梁,常见的click,load,mouseover都是事件的名字,事件发生时调用它的处理函数执行相应的JavaScript代码并给出响应。
wsuo
2020/07/31
1K0
41个Web开发者都收藏的实用代码
        1. 将彻底屏蔽鼠标右键 oncontextmenu="window.event.returnValue=false" <table border oncontextmenu=return(false)><td>no</table> 可用于 Table         2. 取消选取、防止复制 <body onselectstart="return false">         3.JS不允许粘贴 onpaste="return false"         4. JS防止复制
Youngxj
2018/06/06
2.5K0
input输入框的限制
该事件与 v-on:input 事件的区别在于:input 事件是实时监控的,每次输入都会调用,而@keyup.enter 事件则是在 pc 上需要点击回车键触发,而在手机上则是需要点击输入键盘上的确定键才可触发。
leader755
2022/03/09
2.6K0
easyui validate 后 使用ajax提交
<form id="gfxwjForm" name="gfxwjForm" action="" method="post" enctype="multipart/form-data"> <div class="win_body_cln_1"> 名&nbsp;&nbsp;称:<input class="easyui-textbox" id="txt_mc" name="txt_mc" data-options="required:true" missingMessage="不能为空!" style="height:30px" value="${zywsptGfxwjb.mc}"> </div>
用户5640963
2019/07/28
1.5K0
一个正则表达式测试(只可输入中文、字母和数字)
  在项目中碰到了正则表达式的运用,正则还是非常强大的,不管什么编程语言,基本上都可以用到。之前在用java时特别是对用户名或密码使用正则非常爽,写脚本上用正则也非常爽,可是到了OC这却把我虐了一把,可能是对OC掌握的不够。这里就罗列了从网上找的很有用的资料,感谢大神们的贡献。 首先举一个例子: 匹配9-15个由字母/数字组成的字符串的正则表达式: NSString * regex = @"^[A-Za-z0-9]{9,15}$"; NSPredicate *pred = [NSPredi
猿人谷
2018/01/17
5.8K0
WPF 自定义文本框输入法 IME 跟随光标
本文非小白向,本文适合想开发自定义的文本框,从底层开始开发的文本库的伙伴。在开始之前,期望了解了文本库开发的基础知识
林德熙
2022/03/15
2.1K0
详解PHP中的 input属性(隐藏 只读 限制)
<input onkeydown="if(event.keyCode==13)event.keyCode=9">
用户2323866
2021/06/29
1.9K0
相关推荐
屏蔽(禁止)鼠标右键代码「建议收藏」
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验