Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jQuery或Javascript解析字符串以外的GUID_Javascript_Jquery_Guid - Fatal编程技术网

使用jQuery或Javascript解析字符串以外的GUID

使用jQuery或Javascript解析字符串以外的GUID,javascript,jquery,guid,Javascript,Jquery,Guid,在我的网站中,我有一个文本框,用户将在其中输入来自促销代码的GUID。 我想自动将连字符添加到用户手动或通过复制/粘贴输入的字符串中。 这应该通过jQuery或jQuery来完成,或者可能还有HTML5解决方案 我找到了一个信用卡号码的解决方案,这与我正在寻找的解决方案并不遥远。但由于我没有使用RegEx的经验,我无法让它为GUID工作 User@jmp提出了另一个想法,一般来说是可行的,但看起来。。。没那么好。因为当您开始输入代码时,您的值看起来像“123-----”。如果字符串像示例1(信用

在我的网站中,我有一个文本框,用户将在其中输入来自促销代码的GUID。 我想自动将连字符添加到用户手动或通过复制/粘贴输入的字符串中。 这应该通过jQuery或jQuery来完成,或者可能还有HTML5解决方案

我找到了一个信用卡号码的解决方案,这与我正在寻找的解决方案并不遥远。但由于我没有使用RegEx的经验,我无法让它为GUID工作

User@jmp提出了另一个想法,一般来说是可行的,但看起来。。。没那么好。因为当您开始输入代码时,您的值看起来像“123-----”。如果字符串像示例1(信用卡)中那样动态更改就好了

这就是我到目前为止所做的:

$('.creditCardText').keyup(函数(){
var foo1=$(this.val().split(“”)。join(“”;//删除连字符
如果(foo1.length>0){
foo1=foo1.match(新的RegExp('.{1,4}',g')).join(“-”);
}
$(this.val(foo1);
});
$('.guidText').keyup(函数(){
var foo2=$(this.val().split(“-”).join(“”;//删除连字符
如果(foo2.length>0){
foo2=newstring().concat(foo2.substring(0,8),'-',foo2.substring(8,12),'-',foo2.substring(12,16),'-',foo2.substring(16,20),'-',foo2.substring(20,32));
}
$(this.val(foo2);
});
input[type=“text”]{
宽度:350px;
}

信用卡模式:


GUID模式:

这是使用jquery inputmask捆绑包的工作GUID掩码

$(()=>{
$(“#cc”).inputmask({“mask”:“99999999-9999-9999-9999-99999-9999999999”);
});
输入{
字体系列:monospace;
}
标签{
显示:块;
}
div{
保证金:0.01雷姆0;
}

指南

为什么不在普通的旧javascript中执行类似的操作
newVal=newstring().concat(GUID.substring(0,4),'-',GUID.substring(4,8),'-',GUID.substring(8,13))
工作-但看起来很糟糕:-D当输入111时,得到的是111-----问题应该用这个更新,然后你是对的,donesorry,我忘了提到我不允许使用插件-(所以可能是这样的?给定的示例使用了2个插件:-(我发现此示例用于检测带有正则表达式的GUID。但我无法将其用于我的示例:@jonsow您找到的示例用于拆分相同大小的数字。我现在编辑了我的答案以满足您的需要。)。