多个条件JQuery包含搜索

时间:2013-07-12 00:50:52

标签: jquery

我正在修改Instant JQuery Search,以便在包含多列的sharepoint列表中使用。

我几乎让这个工作正常,但是在使用AND条件和OR条件方面遇到了麻烦。

搜索框看起来像这样,

User1 OR User2,Customer

这就是我希望用户搜索的方式..这意味着他们可以搜索User1或User2 AND Customer。这应该是非常直接的,这就是我认为它应该看起来的样子。但它不是在客户上做AND运算符。

tr.ms-itmhover:Contains('User1'),tr.ms-itmhover:Contains('User2'):tr.ms-itmhover:Contains('Customer')

下面是我的javascript:

 var txt = $("input.search").val().split(',');
         var str = "";
         var strnot = "";
         if (txt)
         {
             for(var i=0;i<txt.length;i++) {
                var txt2 = txt[i].split('OR');
                if (txt2.length > 1) {
                    for (var j=0;j<txt2.length;j++) {
                        if (j==0) {
                            str += "tr.ms-itmhover:Contains('"+txt2[j].toString().trim() +"')";
                        }
                        else {
                            if (txt2[j].length > 0) {
                                str += ",tr.ms-itmhover:Contains('"+txt2[j].toString().trim() + "')";
                            }
                        }
                    }
                }
                else {
                    if (txt[i].length > 0) {
                        if (i == 0)
                            str += "tr.ms-itmhover:Contains('"+txt[i].toString().trim() +"')";
                        else
                            str += ":tr.ms-itmhover:Contains('"+txt[i].toString().trim() +"')";
                    }
                }
             }
             $("#temp").html(str);

             //$("#WebPartWPQ2").find(str).hide();     
             //$("#WebPartWPQ2").find(str).show();    

            $("#WebPartWPQ2").find("tr.ms-itmhover:not("+str+")").hide();     
            $("#WebPartWPQ2").find("tr.ms-itmhover"+str+"").show();    
        } 
        else 
        {   
            $("#WebPartWPQ2").find("tr.ms-itmhover").show();
        }

0 个答案:

没有答案