有一个需求,规定用户输入的文本格式是  16,59,63
多个数字的时候,用英文逗号隔开,单个就不用加逗号,这个正则怎么写

解决方案 »

  1.   

    <html>
    <head>
    </head>
    <body>
    <input id="textbox" type="text" value="" />
    <input id="btn" type="button" value="button" />
    <script>
    var input = document.getElementById('textbox');
    document.getElementById('btn').onclick = function(event){
    input.value = input.value.replace(/[^\d,]/g, '');
    }
    </script>
    </body>
    </html>
      

  2.   

    上面两位的试过了,reg.test一直返回是false
     var reg=new RegExp('^(\d{2,},)*\d+$');
      if(GetCPID("txtname").val().trim()=='')
      {
        jquery("#spanname").text(GetString('NameNull'));
        GetCPID("txtname").focus();
        return false;
      }
      else if(!reg.test(GetCPID("txtdesc").val().trim()))
      {
        jquery("#span1").text(GetString('valueiserror'));
        return false;
      }我原来自己写的一个是"[0-9][,]" 这个有一方面判断不了,就是如果文本框里(26,693,)大致就是那字符串中有格式正确的,它都返回是true,
    我要的效果就是 只要他输入的文本框中有除英文逗号之外的标点、中文、英文这些字符,统统都报错,只允许输入数字和英文标点望大牛赐教
      

  3.   

     var reg=/^(\d{2,},)*\d+$'/;
      

  4.   

    你要的效果不是用正则实现的。。
    <html>
    <head>
    </head>
    <body>
    <input id="textbox" type="text" value="" />
    <input id="btn" type="button" value="button" />
    <script>
    var str = 'abcd';
    document.getElementById('textbox').onkeypress = function(event){
    if(!(event.which >= 48 && event.which <= 57 || event.which === 44)){
    alert('输出错误');
    event.preventDefault();
    }
    }
    </script>
    </body>
    </html>
      

  5.   

    哈哈,我可不是什么大牛哦
    上面的代码不支持IE,放个支持IE的吧<html>
    <head>
    </head>
    <body>
    <input id="textbox" type="text" value="" />
    <input id="btn" type="button" value="button" />
    <div id="div"></div>
    <script>
    var div = document.getElementById('div');
    document.getElementById('textbox').onkeypress = function(event){
    //var which = event.keyCode ? event.keyCode : event.which;
    var e = event || window.event;
    var which = e.which || e.keyCode;
    if(!(which >= 48 && which <= 57 || which === 44)){
    alert('输出错误');
    if (e.preventDefault) { 
        e.preventDefault(); 
    } else {
        e.returnValue = false;
    }
    }
    }

    </script>
    </body>
    </html>