Предполагая, что вы ничего уже не решить эту проблему, с вашего комментария, который включал:
var selected = $(this).find(':selected').text();
if (selected.toLowerCase() != "all industries") {
if (trim(selected).length > 0) {
$("#contact-list-selectable li .contact-info-industry").parent().css("display", "none");
$("#contact-list-selectable li .contact-info-industry:contains('" + selected + "')").parent().css("display", "block");
alert($("li[style='display: block;']").text());
}
я предполагаю, что вы имели в виду использовать обивку в качестве метода на строке, или если не то, что у вас есть облицовку функция определена где-то еще. Если это на самом деле выглядит, как выглядит ваш код, и у вас нет пользовательской функции обрезки, то это будет вашей первой проблемой, это должно быть: selected.trim().length
Одна из потенциальных проблем заключается в том, что, пока вы проверяете, что обрезка выбрана> 0 , вы не используете обрезанную версию, выбранную при проверке содержимого. Если у вас есть пробелы/etc в выбранной вами переменной, она не будет содержать.
Here is an example. Обратите внимание на заднее пространство в selected = "computer science ";
, которое намеренно демонстрирует, что происходит в этом случае.
если изменить
$("#contact-list-selectable li .contact-info-industry:contains('" + selected + "')").parent().css("display", "block");
в
$("#contact-list-selectable li .contact-info-industry:contains('" + selected.trim() + "')").parent().css("display", "block");
вы можете избежать этой проблемы (рабочий пример, see here, обратите внимание, тянущаяся пространство все еще там).
Единственная проблема, о которой я мог думать, - это если вы неправильно сформировали какой-либо из ваших селекторов, и они фактически не соответствовали вашей структуре DOM. В противном случае все работает отлично в текущем jquery.
Разве вы не избегаете этих цитат? – Aistina
@Aistina: Я думаю, что вы правы - у меня нет этой проблемы. Не знаю, почему первый пример будет работать. – Pandincus
Да! Я уже пробовал это, но у меня все еще нет результата. –