Próbuję użyć „zawiera” bez rozróżniania wielkości liter. Próbowałem użyć rozwiązania przy następującym pytaniu o przepełnienie stosu, ale nie zadziałało:
Czy istnieje jQuery: zawiera selektor niewrażliwy na wielkość liter?
Dla wygody rozwiązanie zostało skopiowane tutaj:
jQuery.extend(
jQuery.expr[':'], {
Contains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0"
});
Oto błąd:
Error: q is not a function
Source File: /js/jquery-1.4.js?ver=1.4
Line: 81
Oto, gdzie go używam:
$('input.preset').keyup(function() {
$(this).next().find("li").removeClass("bold");
var theMatch = $(this).val();
if (theMatch.length > 1){
theMatch = "li:Contains('" + theMatch + "')";
$(this).next().find(theMatch).addClass("bold");
}
});
Moje użycie oryginalnego słowa „zawiera” z rozróżnianiem wielkości liter w tym samym scenariuszu działa bez żadnych błędów. Czy ktoś ma jakieś pomysły? Byłbym wdzięczny.
:containsExact
,:containsExactCase
i:containsRegex
selektorów do teraz działać we wszystkich wersjach jQuery.