我有以下问题:
我有添加按钮,这是添加类似标签的内容,我想检查标签是否已添加。 这是我的尝试......但没有成功
if ($(".selected_tags li span").find($("#tagname").val())) {
alert("Tag already exists!");
}
我想我没有正确使用find功能......
提前致谢,
Ž。
编辑:当我看到答案时,我发现你误解了我。那是错的! 所以这里有更多细节:我有一个输入字段和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>
因此,每当用户按下“添加”按钮时,我需要通过所有跨度执行简单搜索,以检查标签是否已经存在。
答案 0 :(得分:1)
鉴于您不能拥有多个具有特定ID的元素,如果您正在寻找ID为tagname
的元素,则应该只测试
if ($("#tagname").length) {
alert("Tag already exists!");
}
如果您要搜索的是标记,而不是ID,请使用
if ($(".selected_tags li span tagname").length) {
alert("Tag already exists!");
}
如果要查找由id为tagname
的输入值给出的标记,作为".selected_tags li span"
元素的后代,请使用lenght,如下所示
if ($($('#tagname').val(), ".selected_tags li span").length) {
答案 1 :(得分:1)
尝试length()
...
if ($(".selected_tags li span").find($("#tagname").val()).length > 0) {
alert("Tag already exists!");
}
不使用find()
if ($(".selected_tags li span tagname").length > 0) {
alert("Tag already exists!");
}
答案 2 :(得分:0)
你有一些错误,应该是:
if ($(".selected_tags li span").find("#tagname").length) {
alert("Tag already exists!");
}