测试子项是否包含jQuery的特定文本

前端之家收集整理的这篇文章主要介绍了测试子项是否包含jQuery的特定文本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我必须过滤一个html表.为此,我为所有tr元素创建了每个回调,并测试其中一个tr-children是否包含某些特定模式.

$("#filter").keypress(function() {
    var filter = $(this).val();

    $("#table1 tr[data-config]").each(function(){

        var val = $(this).find(":contains('" + filter + "')");

        if(val.length > 0){
            $(this).css("display","table-row");
        }else{
            $(this).css("display","none");
        }
    });
});

它有效,但有一个功能来测试一个元素是否包含一些文本?

目前,我检索包含模式的所有元素的列表,如果它大于零则计数.是否有一个jQuery函数,它测试是否发生这种模式并返回一个布尔值?该表可以包含许多行,因此我希望尽可能少的开销.

最佳答案
///// replace these lines...
// var val = $(this).find(":contains('" + filter + "')");
// if(val.length > 0){

///// with this line
if($(this).text().match(filter)){

这通过将整行内容转换为文本字符串,然后使用简单的字符串比较函数来检查文本中是否包含过滤器(因此行)

猜你在找的HTML相关文章