Jquery 如何在列表项中搜索匹配项?

Jquery 如何在列表项中搜索匹配项?,jquery,html,Jquery,Html,我有以下问题: 我有一个添加按钮,它正在添加类似于标签的内容,我想检查标签是否已经添加。 这是我的尝试。。。但并不成功 if ($(".selected_tags li span").find($("#tagname").val())) { alert("Tag already exists!"); } 我想我没有正确使用find函数 提前感谢, Z 编辑:当我看答案时,我发现你误解了我。那是我的错! 下面是更详细的例子:我有一个输入字段和ADD按钮。用户在字段中键入标记名,

我有以下问题:

我有一个添加按钮,它正在添加类似于标签的内容,我想检查标签是否已经添加。 这是我的尝试。。。但并不成功

 if ($(".selected_tags li span").find($("#tagname").val())) {
    alert("Tag already exists!");
    }
我想我没有正确使用find函数

提前感谢,

Z

编辑:当我看答案时,我发现你误解了我。那是我的错! 下面是更详细的例子:我有一个输入字段和ADD按钮。用户在字段中键入标记名,当他按下Add按钮时,我需要检查他是否已经在标记名列表中添加了具有该名称的标记

以下是HTML结构:

<div class="new_article_add_tags_wrap">
            <input type="search" class="search_new_article_tags" id="tagname"/>
            <button class="add_new_article_tag_btn" id="add_tagname"><span>Add</span></button>
        </div>
        <div class="new_article_selected_tags_container">
            <ul class="selected_tags">
                <li>
                    <span>Algorithm</span>
                </li>
                <li>
                    <span>Graph Theory</span>
                </li>
            </ul>
        </div>

添加
  • 算法
  • 图论

因此,每当用户按下“添加”按钮时,我需要对所有范围执行简单的搜索,以检查标记是否已经存在。

鉴于不能有多个具有特定id的元素,如果要查找具有id的元素<代码>标记名,则只需进行测试

if ($("#tagname").length) {
    alert("Tag already exists!");
}
如果要搜索的是标签而不是id,请使用

if ($(".selected_tags li span tagname").length) {
    alert("Tag already exists!");
}
如果要查找由id为
标记名的输入值给出的标记,作为
”元素的后代。选择的标记是span
元素,请使用如下长度

if ($($('#tagname').val(), ".selected_tags li span").length) {
试试
length()

if ($(".selected_tags li span").find($("#tagname").val()).length > 0) {
  alert("Tag already exists!");
}
wihtout使用find()


您有一些错误,应该是:

if ($(".selected_tags li span").find("#tagname").length) {
    alert("Tag already exists!");
}
if ($(".selected_tags li span").find("#tagname").length) {
    alert("Tag already exists!");
}