0

我有一个清单:

<ul id="coll-selected-list" class="droptrue sort-drop ui-sortable">
              <li class="sortedli" style="">blah</li>
              <li class="sortedli" style="">blee</li>
              <li class="sortedli" style="">blu</li>
              <li class="sortedli" style="">blum</li>
</ul>

我想检查它是否存在于上面的列表中。但是我的代码不起作用,有什么想法吗?

var itemName = "blah";
           if ($("#coll-selected-list li:contains(" + itemName + ")").length) {
               alert("exists");
           }
4

4 回答 4

1

您可以通过根据元素内部文本过滤元素并查看有多少元素与过滤器匹配来确定元素是否存在:

var exists = $("#coll-selected-list > li")
                 .filter(function() { return $(this).text() == "blah" })
                 .length
             != 0;
于 2012-07-11T09:57:48.233 回答
1

添加引号:

if ($('#coll-selected-list li:contains("' + itemName + '")').length) {
于 2012-07-11T09:58:57.827 回答
0
var itemName = "blah";
           if ($("#coll-selected-list li:contains('" + itemName + "')").length>0) {
               alert("exists");
           }​

您缺少包含的引号

于 2012-07-11T09:59:46.883 回答
0

缺少来自包含的引号

var itemName = "blah";
if ($('#coll-selected-list li:contains("' + itemName + '")').length) {
    alert("exists");
}

演示。

于 2012-07-11T10:01:00.203 回答