Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 06.07.2014, 21:25
Интересующийся
Отправить личное сообщение для cevut Посмотреть профиль Найти все сообщения от cevut
 
Регистрация: 07.03.2014
Сообщений: 13

Получить элемент с указанным содержимым
Всем доброго времени суток. Гугл мне не помог, поэтому настало время верить в людей. У меня на странице есть список (ul>li), некоторые li в него добавляются средствами шаблонизатора, а некоторые с помощью jquey в следствии каких-то событий. Подскажите, пожалуйста, как мне получить li с указанным содержимым, например
<li>getme</li>

Я понимаю что можно просто пройтись в цикле по всем элементам li нужного ul и сравнивать их содержимое, но мне кажется что это не самое хорошее решение и у jquery должно быть что-то посимпатичнее. Было бы хорошо получить элемент в таком виде, чтобы можно было исправить его содержимое.
Ответить с цитированием
  #2 (permalink)  
Старый 07.07.2014, 08:19
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

у jq есть метод filter() аргумент которого является функцией фильтрующей как душе угодно. Что по сути тот же цикл просто все "несимпатичности" скрыты под капотом и несколько удобнее чем простой цикл.

Но я бы предпочел ставить этим элементам определенный класс - так и правильней и куда менее затратно чем фильтровать.
Ответить с цитированием
  #3 (permalink)  
Старый 07.07.2014, 14:23
Интересующийся
Отправить личное сообщение для cevut Посмотреть профиль Найти все сообщения от cevut
 
Регистрация: 07.03.2014
Сообщений: 13

krasovsky,
да, так и сделаю - добавлю id.
я вчера пробовал что-то c find() и filter(), но ничего нужного не получилось. Не могли бы вы показать как с этим всем работать в моем случае?

Последний раз редактировалось cevut, 07.07.2014 в 14:33.
Ответить с цитированием
  #4 (permalink)  
Старый 07.07.2014, 17:50
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 29,869

Сообщение от cevut
как мне получить li с указанным содержимым
http://api.jquery.com/contains-selector/
Ответить с цитированием
  #5 (permalink)  
Старый 08.07.2014, 12:59
Профессор
Отправить личное сообщение для krasovsky Посмотреть профиль Найти все сообщения от krasovsky
 
Регистрация: 21.12.2012
Сообщений: 869

Сообщение от cevut
я вчера пробовал что-то c find() и filter(), но ничего нужного не получилось. Не могли бы вы показать как с этим всем работать в моем случае?
find ищет dom элементы а не текст.
$('li').filter(function(){
if($(this).text() == 'sometext') {//фильтруем  по тексту
return $(this);
}
if($(this).hasClass('someclass')) {// фильтруем  по классу
return $(this);
}

if($(this).prev()[0].id == 'someid') {// фильтруем  по id предыдущего элемента
return $(this);
}
})
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Получить элемент, на котором была вызвана функция barcelona Общие вопросы Javascript 15 06.07.2013 03:44
получить элемент. не получается zlodiak Общие вопросы Javascript 2 20.12.2012 17:13
Получить элемент Id.Class debugx jQuery 1 25.05.2011 11:50
Получить элемент из store DenQ ExtJS 1 07.11.2010 16:51
Как получить указатель на элемент вызвавший функцию pelayo Общие вопросы Javascript 9 29.06.2010 23:32