2 baidu 29047977 baidu_29047977 于 2016.09.27 11:39 提问

text 文本框限制输入问题,求点击

text文本框中只需要英文和数字,但在已输入正确的文字中插入一个字符,光标就自动跳到最后,该如何解决?
如:
我在文本框中输入abde字符,现在将光标移动到bd中间插入一个c字符后,光标自动跳到e后边。请哪位大神帮忙解决一下。
话不多说,直接上代码:
style="ime-mode: disabled"
onkeyup="if(event.keyCode != 37&&event.keyCode != 39&&event.keyCode != 8){value=value.replace(/[\W]/g,'')} "
onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"
maxlength="7" />
导致这个问题就是onkeyup方法中的value=value.replace(/[\W]/g,''),但又不能去掉,纠结中~

4个回答

quasimodo_es
quasimodo_es   2016.09.27 12:43
已采纳

因为这个造成的 value=value.replace(/[\W]/g,'');

设置value值的时候,光标就会移动到最后;
把if条件反过来,如果值正确就不设置value= ,

baidu_29047977
baidu_29047977 听君一席话,胜查2天百度啊~
接近 2 年之前 回复
caozhy
caozhy   Ds   Rxr 2016.09.27 11:50
Mr_dsw
Mr_dsw   Ds   Rxr 2016.09.27 12:36

你看下这个,设置光标位置http://www.jb51.net/article/45420.htm

baidu_29047977
baidu_29047977   2016.09.27 14:31

onkeyup="if(event.keyCode != 37&&event.keyCode != 39&&event.keyCode != 8){if(/[\W]/g.test(value)){value=value.replace(/[\W]/g,'')}} "
把代码换成这样就完美了!
感谢@qc_nj

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
文本框限制输入中文、数字等等
文本框限制输入中文、数字等等,文本框限制输入中文、数字等等
限制文本框的输入(只输入数字)
文本框防止非法字符输入:只输入整数:Private Sub Text1_KeyPress(KeyAscii As Integer)Select Case KeyAscii    Case Asc("0") To Asc("9"), vbKeyBack        nopCase Else        KeyAscii = 0End SelectEnd Sub只输入小数:Priva
JAVA之JTextField限制输入长度
TextField中,我们需要设置它的输入长度,但是呢?JAVA中没有给出具体的方法,那么只好自己来写一个了。 这里先给出第一种方法: 对于TextField的对象,给它增加一个事件监听,每当从键盘敲入一个字符时,就对它的长度进行判断,如果长度达到某一条件,则无法继续输入(通过consume方法实现)。 public void keyTyped(KeyEvent e) { // TODO
如何限制用户在文本框输入的字数
方法一,超出字符之后就不能再输入了。 10){this.value=this.value.slice(0,10)}"> 方法二,超出字符后将会弹出提示。 function   chkmaxsms(vobj1,vmax)   {    var   str=vobj1.value;    var   strlen=str.length;       if(strlen>v
文本输入框,限制输入字数
个人学习笔记,文本输入框,限制输入字数一:文本输入框,限制输入字数,汉字两个字符,其他数字,符号,字母,回车,空格等一个字符<html> <div id="updateDiv" class="display_none"> <textarea id="updateInput" class="updateInput" style="height:300px;width:3
.net 限制textbox的输入字符长度
TextMode="MultiLine">
文本框输入限制 [大全]
1、下面的文本框只能输入数字代码(小数点也不能输入):CODE:2、只能输入数字,能输小数点.(注意汉字.用输入法和复制上面三个是有区别的在这里)CODE:CODE:CODE:3、只能输入字母和汉字CODE:4、只能输入英文字母和数字,不能输入中文CODE:5、只能输入数字和英文chunCODE:6、小数点后只能有最多两位(数字,中文都可输入),不能输入字母和运算符号:CODE:57) && ev
限制HTML的文本输入框只能输入数字的4种方法
限制HTML的文本输入框只能输入数字的4种方法1. keydown 通过阻止事件往keypress传播,来禁止非数字字符在文本框显示。 &amp;lt;html&amp;gt; &amp;lt;head&amp;gt; &amp;lt;script type=&amp;quot;text/javascript&amp;quot; src=&amp;quot;jquery.js&amp;quot;&amp;gt;&amp;lt;/script&amp;gt; &amp;lt;script ty
.net自定义控件系列-文本框限制输入控件-EnglishTextBox
.net自定义控件系列-文本框限制输入控件-EnglishTextBox .net自定义控件系列-文本框限制输入控件-EnglishTextBox
【JavaScript】——限制文本框输入内容
js限制文本框input只能输入数字