0

我无法将列表限制为仅添加唯一项目这是我到目前为止所拥有的

function addTab(tabName)
{
    var tabList=$("#pageContent ul").find("li").text();
    if($("#pageContent ul li:contains('"+tabList+"')").length<1)
    {
        $("#pageContent ul").append("<li>"+tabName+"</li>");
    }
    else
    {   

    }
}

但它不起作用我不确定出了什么问题,据我所知,这应该是最好的方法。

我打算使用 jQuery UI 选项卡,但我的布局使用浮动和混乱的选项卡小部件

4

1 回答 1

0

您正在获取所有 li 元素的文本内容,然后尝试选择包含该特定文本的 li 元素,这没有意义,您甚至没有tabName在过滤逻辑中使用,请尝试以下 usingfilter方法。

function addTab(tabName) {
    var $e = $("#pageContent ul");
    var n = $e.find("li").filter(function(){
        var t = this.textContent || this.innerText;
        return t === tabName
    }).length;

    if (n === 0) {
        $e.append("<li>"+tabName+"</li>");
    } else {  
       // ...
    }
}
于 2013-01-05T19:37:32.020 回答