如何使jQuery包含不區(qū)分大小寫的內(nèi)容,包括jQuery 1.8+?我試圖不敏感地使用“包含”一詞。我嘗試在下面的堆棧溢出問題上使用該解決方案,但沒有成功:是否有不區(qū)分大小寫的jQuery:包含選擇器?為了方便起見,在這里復制解決方案:jQuery.extend(
jQuery.expr[':'], {
Contains : "jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())>=0" });以下是錯誤:Error: q is not a functionSource File: /js/jquery-1.4.js?ver=1.4Line: 81這里是我使用它的地方: $('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");
}
});在相同的場景中,我使用了區(qū)分大小寫的“Content”,沒有任何錯誤。有人有什么想法嗎?我會很感激的。
3 回答

藍山帝景
TA貢獻1843條經(jīng)驗 獲得超7個贊
這是我在當前項目中使用的,沒有任何問題??纯茨谶@種格式上是否有更好的運氣:
jQuery.expr[':'].Contains?=?function(a,?i,?m)?{? ??return?jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase())?>=?0;?};
在jQuery 1.8中,用于此操作的API更改后,jQuery 1.8+版本如下:
jQuery.expr[":"].Contains?=?jQuery.expr.createPseudo(function(arg)?{ ????return?function(?elem?)?{ ????????return?jQuery(elem).text().toUpperCase().indexOf(arg.toUpperCase())?>=?0; ????};});

至尊寶的傳說
TA貢獻1789條經(jīng)驗 獲得超10個贊
:Contains
:contains
jQuery.expr[':'].Contains = function(a, i, m) { return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; };jQuery.expr[':'].contains = function(a, i, m) { return jQuery(a).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0; };

幕布斯7119047
TA貢獻1794條經(jīng)驗 獲得超8個贊
我會做這樣的事
?????$.expr[':'].containsIgnoreCase?=?function?(n,?i,?m)?{ ????????return?jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase())?>=?0; ????};
然后離開:contains
獨自一人.。
演示
那么為什么jQuery在它的庫中不支持它呢?!如果有那么簡單的話.。
因為你的代碼傳遞火雞密碼了嗎?
- 3 回答
- 0 關(guān)注
- 534 瀏覽
添加回答
舉報
0/150
提交
取消