2013-04-03 2 views
0

У меня есть следующий вопрос:Как найти совпадение внутри элементов списка?

У меня есть Добавить кнопку, которая добавляет что-то вроде тега и я хочу, чтобы проверить, если тег уже добавлен. Вот моя попытка ... но не увенчались успехом

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

Я полагаю, что я не использую функции поиска правильно ...

Спасибо заранее,

З.

EDIT: Когда я смотрю на ответы, я вижу, что вы меня неправильно поняли. Это ошибка! Так вот в случае с более подробной информацией: у меня есть поле ввода и кнопка 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> 

Таким образом, каждый раз, когда пользователь нажимает кнопку Add мне нужно выполнить простой поиск через все пролеты, чтобы проверить, если тег уже существует.

ответ

1

Учитывая, что вы не можете иметь более одного элемента с определенным идентификатором, если вы ищете присутствие элемента с идентификатором tagname, вы должны просто проверить

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

Если то, что вы хотите для поиска является тег, а не идентификатор, используйте

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

Если вы хотите посмотреть на тег, который задается значением входного чей идентификатор tagname, как потомок ".selected_tags li span" элементов, используйте длину, как это

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

попробовать length() ...

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

wihtout с помощью находки()

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

У вас есть какая-то ошибка, должен быть:

if ($(".selected_tags li span").find("#tagname").length) { 
    alert("Tag already exists!"); 
} 
Смежные вопросы