怎么样子用JS判断输入的数据是否连续的?如果输入:abcdef
这样子是连接的,也不可以:fedcba这样子的倒序还有,是数字
123456,654321都不可以。abcd1234这样子也不可以。请各位大侠,说说这样子要怎么样子用JS来实现?

解决方案 »

  1.   

    var s = 'abcdefghijklmnopqrstuvwxyz';
    if(s.indexOf(target) >= 0){....}
      

  2.   


    <script>
    function test(str) {
    var preChar, currChar;
    for(var i=0, n=str.length; i<n; i++) {
    currChar = str.charCodeAt(i);
    if(currChar < 65 || currChar > 122)
    return false;
    if(i > 0 && currChar != (preChar + 1))
    return false;
    preChar = currChar;
    }
    return true;
    }alert(test("abc123"));
    alert(test("abcdefg"));
    alert(test("ABCDEFG"));
    </script>
      

  3.   

    function testStr(str){
      var arrStr = str.split("");
      var startStr = arrStr[0].charCodeAt();
      for(var i=1,n=arrStr.length;i<n;i++){
        if(arrStr[i].charCodeAt() != ++startStr) return false;
      }
      return true;
    }
    alert(testStr("abcd"));
    alert(testStr("1234"));
    alert(testStr("abcd1234"));
      

  4.   


    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>验证</title>
    <script>
    function checkSort(o) {
    var val = o.value;
    var ar = val.split('');
    if (ar.length >= 2) {
    if (ar[0].charCodeAt(0) == ar[1].charCodeAt(0) + 1) {
    for(var i = 0; i < ar.length; i++) {
    var charCode = ar[i].charCodeAt(0);
    if (i + 1 < ar.length) {
    var charCode2 = ar[i+1].charCodeAt(0);
    if (charCode != charCode2 + 1) {
    o.value = val.substring(0, i + 1);
    break;

    }
    }
    }
    if (ar[0].charCodeAt(0) == ar[1].charCodeAt(0) - 1) {
    for(var i = 0; i < ar.length; i++) {
    var charCode = ar[i].charCodeAt(0);
    if (i + 1 < ar.length) {
    var charCode2 = ar[i+1].charCodeAt(0);
    if (charCode != charCode2 - 1) {
    o.value = val.substring(0, i + 1);
    break;

    }
    }
    }
    }
    }
    </script>
    </head><body>
    <input type=text value=""  onkeyup="checkSort(this)"/>
    </body></html>
      

  5.   

    首先判断输入的是字母,其次判断这个字符串是否包含在"abcdefghijklmnopqrstuvwxyz"中就可以了
      

  6.   

    <script>
    function test(str) {
        var preChar, currChar;
        for(var i=0, n=str.length; i<n; i++) {
            currChar = str.charCodeAt(i);
            if(currChar < 65 || currChar > 122)
                return false;
            if(i > 0 && currChar != (preChar + 1))
                return false;
            preChar = currChar;
        }
        return true;
    }
    </script>
      

  7.   

    谢谢大家热情的回答我看了各位的回答都是判断全是数字,或者英文的时候有效,但一出现123456abcde的时候,都是返回false的。真的出现这样子的时候,有没有比较好的处理呢?谢谢!
      

  8.   


    lz你不是说了"bcd1234这样子也不可以"吗
      

  9.   


    但一出现123456abcde的时候,都是返回false不能满足你的需求吗?