javascript - jquery防止元素重复

标签 javascript jquery html css asp.net

我有一个 jquery 代码。

有一个ul和li

我的代码如下

      var responses = response;

        for (var i = 0; i < responses.length; i++) {

            if ($("#" + $("#sp").val()).attr("class") == "more") {
                // alert("if");

                $("#p_li").append("<ul class='fwd'><li><a href='#' onclick='cs1(this)'>" + responses[i] + "</a></li></ul>").before();

            }

    }

我想要父 li,即:"$("#p_li")"没有重复元素(即具有相同字符串文本的 li)。请记住,p_li 包含此函数运行之前的数据

响应包含城市列表。

我试过这种情况,但失败了

if ($('#fwd > li:contains(' + responses[i] + ')').length == 0)

最佳答案

有函数 .unique() 在 jQuery 中。如果您给它一个具有重复值的数组,它会返回一个具有唯一值的新数组。

如果 responses 数组包含所有具有重复值的城市名称,您应该首先使用 .unique() 删除重复项,然后使用新的唯一数组创建您的元素。

关于javascript - jquery防止元素重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27147122/

相关文章:

javascript - jQuery通过间隔、超时实现自动 slider

javascript - 如何强制 d3js 在创建 x 轴时考虑小时数?

javascript - 将 Revolution Slider 5+ 图层设置为静态图层

jquery - 如何获取对单击的超链接的引用

javascript - React 组件的 props 是如何异步更新的?

javascript - JSON 参数大小限制

javascript - 处理从 javascript 到 MySQL 到 javascript 到 MS SQL 到 javascript 的时区

javascript - 有什么方法可以将 js ref 和 css ref 包含为单个 ref?

html - Firefox 的 CSS 问题,但在 Chrome 中有效

javascript - Angular-Route 和 ng-view div 隐藏页面