阵列打印多次

时间:2014-02-05 15:31:17

标签: javascript jquery typescript

我正在尝试打印出搜索结果的编号链接。

如果总共有5个页面,我只想显示5个链接,如果只有6个链接等,则一次只能显示10个链接。

下面我将该值设置为5页搜索结果(稍后我将从应用程序的其他部分加载此数字)。如何根据'allPages'的值打印出链接数?

'smallPages'就在那里,以后我会追加'>'如果搜索结果超过10页

function updatePage() {
            var allPages = 5;
            var smallPages = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

            if (allPages <= 10) {
                for (var i = 1; i < 10; i++) {
                    jQuery.each(allPages, function (index, value) {
                        $('#pages').append("<a href='#'>  " + value + '</a>');
                    })
                }
            }

1 个答案:

答案 0 :(得分:0)

是的,很多令人困惑的循环和检查正在进行中。我会做一个单一的for循环结构如下:

for(var i = 0; i < smallPages.length && i < allPages; i++)
    $('#pages').append("<a href='#'> " + smallPages[i] + '</a>');

这将检查您是否没有在smallPages的末尾运行,并且您没有添加超过allPages中指定的数量。

编辑: 想想我还会添加为什么你的代码无效。 jQuery.each迭代数组中的每个元素,并为它赋予了一个整数。

其次,你应该使用.length来循环遍历硬编码数字'10',以防你更改数组或者在最终程序中是动态的。