我无法将列表限制为仅添加唯一的项目,这是我目前所拥有的
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标签,但我的布局使用浮动和混乱标签小部件
答案 0 :(得分:0)
您正在获取所有li元素的文本内容,然后尝试选择包含该特定文本的li元素,这没有意义,您甚至不在过滤逻辑中使用tabName
,请尝试使用filter
方法后。
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 {
// ...
}
}