javascript - 限制函数中动态列表项的数量

标签 javascript jquery ajax

我想用我一直在研究的这段代码实现两件事,所以不确定是否要分开问题:

JS:

function listPosts(data) {
    postlimit = 
    var output='<ul data-role="listview" data-filter="true">';
    $.each(data.posts,function(key,val) {   

        output += '<li>';
        output += '<a href="#devotionpost" onclick="showPost(' + val.id + ')">';
        output += '<h3>' + val.title + '</h3>';
        output += '<p>' + excerpt + '</p>';
        output += '</a>';
        output += '</li>';
    }); // go through each post
    output+='</ul>';
    $('#postlist').html(output);
} // lists all the posts

问题:

1:我想将返回的动态列表帖子数量限制为 8

2:虽然我限制了显示的项目,但我想在底部添加“更多...”文本,以便将另一组 8 个项目附加到已显示的列表中。

我已经在尝试一些代码,但希望得到一些指导

最佳答案

function listPosts(data, postlimit) {
    var $output = $('<ul class="posts" data-role="listview" data-filter="true">');

    $.each(data.posts,function(key, val) {   
        $("<li>", {id: "post_" + val.id})
            .append([
                $("<h3>", {text: val.title}),
                $("<p>", {text: val.excerpt})
            ])
            .appendTo($output);

        return (postlimit-- > 1);
    });

    $('#postlist').empty().append($output);
}

// exemplary delegated event handler
$(document).on("click", "ul.posts h3", function () {
    $(this).show();
});

稍后...

listPosts(data, 8);

注释:

  • $.each() 中,您可以返回 truefalse。如果返回 false,循环就会停止。
  • 尽量不要从连接的字符串构建 HTML。这很容易出现容易避免的 XSS 漏洞。 jQuery 为您提供安全构建 HTML 的工具。
  • 通常,出于同样的原因,请尽量避免使用 .html(),特别是如果您已经有 DOM 元素可供使用。
  • 不要使用内联事件处理程序,例如 onclick。完全没有。曾经。

关于javascript - 限制函数中动态列表项的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19363776/

相关文章:

javascript - 使用参数数组调用函数

javascript - 重新运行 PHP rss feed

javascript - 从 .each 返回的“未定义”在 tr 上运行并选择了 id

javascript - 如何使用 ajax 提交表单并上传文件到 spring Controller ?

javascript - 从对象的 Knockout observableArray 的第 n 个索引中提取特定字段

javascript - 日期选择器在 Jquery UI/Jquery Easy UI 中选择特定日期范围

javascript - 如何使用 jQuery Grep 过滤极度嵌套的 JSON

连续悬停在选项卡上的 jQuery SCSS 问题

javascript - 检查jquery(或ajax)功能是否完成

javascript - Bing map Ajax v7 图钉在缩放/平移上移动