TextBox验证在键入时放置特殊字符

时间:2015-06-26 19:59:32

标签: javascript jquery html5 input inputbox

我对Textbox有要求。我什么时候设置一些值,应该进行一些验证,以便放置" - "在值之间。

喜欢当我在文本框中输入值123456789时,它会自动显示我" 123-45678-9"或任何其他格式取决于业务。我无能为力。我需要展示" - "在文本框中键入值。

任何想法/建议都会有所帮助。

2 个答案:

答案 0 :(得分:0)

请看看@这个,根据您的需要进行定制

    <!DOCTYPE html>
<html>
<body>

<input type="text" id="myid" onkeyup="myFun()">


<script>
var counter = 0;
function myFun() {

    counter++;
    if(counter==3)
    {
       var value = document.getElementById("myid").value;
       value = value + "-";
       document.getElementById("myid").value = value;
       counter=0;
    }
}
</script>

</body>
</html>

答案 1 :(得分:0)

这取决于您使用的元素标签。

如果您正在使用,则可以使用pattern属性和regex。 关于你想要什么,我有点困惑;然而,这里有一个例子,说明如何只接受一个像123-45678-9这样的数字的确切格式的3个数字,然后用5个数字然后用破折号接一个数字。

[0-9] {3} - [0-9] {5} - [0-9] {1} 这表示它将接受任意数字,[0-9],前3个点,{3},第一个数字是最小值,潜在的第二个数字是连续数字的最大数量,然后是破折号, - ,等等,这些规则与{5}和{1}稍有不同。

但是,如果您只想在输入中包含短划线和数字,则可以使用以下正则表达式:&#34; [0-9] | - &#34;

最后,您的解决方案可能如下所示:

如果您正在使用,则没有应用于该元素的模式属性,您必须使用javascript来限制接受哪种类型的输入模式。