Javascript/Jquery: Как предупредить текст метки, который содержит мой поиск?
Привет, я искал и нашел разные вещи, основанные примерно на этом и некоторые более тесно связанные, но я не смог придумать и создать работоспособное решение для моей проблемы:
Резюме:
Я хочу создать вид особым образом из-за моих требований. В настоящее время рассматривается использование самореализованного стиля Treeview - я не хочу сейчас использовать какие-либо другие плагины или готовые представления, потому что, как вы можете видеть из прикрепленной демонстрации JS fiddle внизу, я могу Добейся этого сам.
Проблема под рукой:
Это может быть глупо легко или просто, и если это так, пожалуйста, простите мою некомпетентность, но проблема сводится к тегам - которые имеют промежуточный текст, например так:
<ul><checkbox class="collapsible" /><label>Value 1</label>...<ul>
Теперь у меня нет проблем с извлечением этих значений - в списке их немало (по одному для каждой опции). Но, наконец, основа проблемы заключается в том, чтобы сопоставить их с моим поиском. Несмотря на то, что я использовал очень очевидный и общий для каждого цикла, у него есть проблема, фактически сопоставляющая 'input' - мою переменную для поискового ввода - и текст метки вместе - следовательно, он не будет предупреждать правильные значения и иногда может предупреждать все 15 значений когда только 4 могут совпадать...
В этом вам будет полезна любая помощь - не стесняйтесь использовать любой код в виде дерева, который очень хорошо работает вместе с полями выбора.
Примечание
В моем реальном представлении эти флажки будут связаны с именами меток, используя класс объекта для заполнения значения. Кроме того, я хочу не предупреждать о соответствующих ярлыках, а выделять их - так что, если кто-то может помочь с этим или предложить что-то еще, что было бы неплохо, - это не критическая проблема. (извините, я знаю, что это вам не поможет и не поможет, но я подумал, что я расскажу вам о моих причинах оповещения об этих ярлыках.)
MY JS FIDDLE DEMO - TREEVIEW - EDIT: это был ответ, который мне был нужен (я оставлю его здесь, если кто-то еще захочет его использовать), ответ отлично предоставлен Radu Andrei
РЕДАКТИРОВАТЬ: Я не ищу оповещения на основе каких-либо критериев, за исключением того факта, что текст меток соответствует тексту поиска.
2 ответа
Ответ на вопрос можно найти в скрипке -> https://jsfiddle.net/mLbhLh89/11/ .
Попробуйте как показано на скрипке
Я только что обновил вашу функцию поиска следующим
$("#search").on("click", function() {
$("label").each(function(i,v){
if($(this).text().indexOf($("#search-criteria").val())>0){
alert($(this).text());
}
});
});
Он найдет строку поиска в каждом тексте метки и покажет предупреждение, если найден.