比如说:第一个框中输入1第二个框中输入3,然后后面的框中输入长度假设是2那么我执行后将得到:01,02,03如果长度设为3,则得到001,002,003就像下载软件中批量下载时所匹配的一样!

解决方案 »

  1.   

    你只要用这个方法就可以了
    //val   传入的字符串
    //ch    需要补位的字符串
    //num   长度
    function padleft(val, ch, num) {
                var re = new RegExp(".{" + num + "}$");
                var pad = "";            do  {
                    pad += ch;
                }while(pad.length < num)            return re.exec(pad + val);
            }然后就是简单的运算了
    :)
      

  2.   

    To:lovefootball(蟑螂
    我是菜鸟一只,
    能不能给个完整的代码块?
      

  3.   

    <script language="JavaScript">function _0009(lower, upper, len)
    {
        var padLength, arr = [];
        for(var i = lower; i <= upper; i++)
        {
            arr.push((padLength = len - i.toString().length) > 0 ? new Array(padLength + 1).join("0").concat(i) : i);
        }
        return arr;
    }alert(_0009(1, 12, 1));
    alert(_0009(1, 12, 2));
    alert(_0009(1, 12, 3));
    </script>
      

  4.   

    感谢,要是能有一个从[a-zA-Z]的就更好了!
      

  5.   

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    ※以下是引用楼主 redhaste(匆匆) 在2007-07-03 09:01:43 的发言:
    ──────────────────────────────────────────
    感谢,要是能有一个从[a-zA-Z]的就更好了!
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    用我那个稍稍改一下就行了,也很简单
      

  6.   

    0009(夏天以南)
    不会写哦,是不是还要把字符转成ASCII码才可以呀,
    不然怎么弄呀?
      

  7.   

    <script language="JavaScript">
    function _0009(lower, upper, len)
    {
        var intLower = parseInt(parseInt(lower, 36).toString(10), 10);
        var intUpper = parseInt(parseInt(upper, 36).toString(10), 10);
        var padLength, arr = [];    for(var i = intLower; i <= intUpper; i++)
        {
            arr.push((padLength = len - i.toString(36).length) > 0 ? new Array(padLength + 1).join("0").concat(i.toString(36)) : i.toString(36));
        }
        return arr;
    }alert(_0009("a", "h", 1));
    alert(_0009("a", "h", 2));
    alert(_0009("a", "h", 3));
    alert(_0009("0", "z", 3));
    </script>