假设我有数字1 2 3 4 5 6 7 8 9 10 11 12那么我要用js或jquery 将其分组 每组4个模拟一个分页的效果 类似于我有12页  《《 1 2 3 》》当我点击 》》  变成  《《 4 5 6 》》再点击 》》   变成  《《 7 8 9 》》怎么实现?

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    </head><body>
    <div id="grouping"></div><a href="javascript:void(0);" onclick="prevGroup();">上一组</a>&nbsp;<a href="javascript:void(0);" onclick="nextGroup();">下一组</a>
    <script type="text/javascript">
    var arr = new Array(1,2,3,4,5,6,7,8,9,10,11,12);
    var size = 3; //每组数量
    var grouping = document.getElementById('grouping');
    var currentGroup = 1;
    window.onload = function() {
    var tmp = arr.slice(0,size);
    grouping.innerHTML = tmp.join('&nbsp;');
    }
    function prevGroup() {
    if (currentGroup == 1) {
    alert('已经是第一个分组!');
    return false;
    }
    else {
    tmp = arr.slice((currentGroup - 2) * size, (currentGroup -1) * size);
    grouping.innerHTML = tmp.join('&nbsp;');
    currentGroup --;
    }
    }
    function nextGroup() {
    if (currentGroup == (Math.ceil(arr.length / size))) {
    alert('已经是最后一个分组!');
    return false;
    }
    else {
    tmp = arr.slice(currentGroup * size,(currentGroup + 1) * size);
    grouping.innerHTML = tmp.join('&nbsp;');
    currentGroup ++;
    }
    }
    </script>
    </body>
    </html>
      

  2.   

    var s   = "1 2 3 4 5 6 7 8 9 10 11 12";
    var reg = /((\d+\s+){3})(?=\d+)/g;
    alert(s.replace(reg, "$1,"));