Javascript 如何在html中的单词和字母之间留出空格?
在html中,当输入字段检测到单词和字母时,我有一个自动分离的问题。例如,当我输入“ABB9102”时,输入字段自动更改为“ABB 9102” 下面是我的编码,此编码只能限制在前面3个字符,无法检测单词和字母之间的距离,如果我键入“ABCD9102”,则无法自动更改为“ABCD 9102”:Javascript 如何在html中的单词和字母之间留出空格?,javascript,html,input,Javascript,Html,Input,在html中,当输入字段检测到单词和字母时,我有一个自动分离的问题。例如,当我输入“ABB9102”时,输入字段自动更改为“ABB 9102” 下面是我的编码,此编码只能限制在前面3个字符,无法检测单词和字母之间的距离,如果我键入“ABCD9102”,则无法自动更改为“ABCD 9102”: 函数空间(str,after){ 如果(!str){ 返回false; } after=在| | 3之后; var v=str.replace(/[^\dA-Z]/g',), reg=新的RegExp(“
函数空间(str,after){
如果(!str){
返回false;
}
after=在| | 3之后;
var v=str.replace(/[^\dA-Z]/g',),
reg=新的RegExp(“.{”+“}”之后的“.{”+”,“g”);
返回v.replace(注册,功能(a){
返回一个+'';
});
}
var el=document.getElementById('pin');
el.addEventListener('keyup',function(){
this.value=空间(this.value,3);
});代码>
不确定这是不是你想要的
<input autocapitalize="off" autocorrect="off" maxlength=20 type="text" placeholder="type the pin" id="pin" name="pin" />
var el=document.getElementById('pin');
函数make_空间(){
var含量=el值;
var patt=content.match(/[^\d^\s]\d/g);
var x;
如果(patt!=null)
(第x页,共页){
el.value=content.replace(x,x[0]+“”+x[1])
含量=el值;
}
var含量=el值;
var patt=content.match(/\d[^\d^\s]/g);
var x;
如果(patt!=null)
(第x页,共页){
el.value=content.replace(x,x[0]+“”+x[1])
含量=el值;
}
}
el.addEventListener('keyup',make_space);
el.addEventListener('change',make_space);
在上面的字段中,您不能键入字母GOT BUG,需要修复它。因此,只有在前面至少有3个字符时,才应该替换它?AB123不应获得空格,但ABC123是否应更改为ABC 123?
// testing
const number = 'ABB9102'
space(number)
//output
> "ABB 9102"
<input autocapitalize="off" autocorrect="off" maxlength=20 type="text" placeholder="type the pin" id="pin" name="pin" />
<script>
var el = document.getElementById('pin');
function make_space () {
var content = el.value;
var patt = content.match(/[^\d|^\s]\d/g);
var x;
if (patt != null)
for (x of patt) {
el.value = content.replace(x, x[0] + " " + x[1])
content = el.value;
}
var content = el.value;
var patt = content.match(/\d[^\d|^\s]/g);
var x;
if (patt != null)
for (x of patt) {
el.value = content.replace(x, x[0] + " " + x[1])
content = el.value;
}
}
el.addEventListener('keyup', make_space);
el.addEventListener('change', make_space);
</script>