2016-03-18 13 views
0

İki değişkenin birleşiminden yüklenen bir dizeye karşı arama yapmak için Jquery'yi almaya çalışmak.İki dizge kümesi için bir öğe ararken Jquery

Daha fazla bağlam için aşağıda daha fazla kod aşağıdadır. Bu kodun amacı, SharePoint tablosunu, hem bir tuşa hem de kullanıcının isteğe bağlı olarak yazabileceği bir değere göre verilen bir değer için aramaktır. Kullanıcı, sadece arama girişini (txt değişkeni) veya düğmeleri kullanarak arama yapabilir.

var ButtonValue = null 
$("#button1").click(function(){ 


      $("#WebPartWPQ5").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ5").find("tr.ms-itmhover:Contains('Faucets')").show(); 

      $("#WebPartWPQ6").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ6").find("tr.ms-itmhover:Contains('Faucets')").show(); 

      $("#WebPartWPQ4").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ4").find("tr.ms-itmhover:Contains('Faucets')").show(); 

      $("#WebPartWPQ7").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ7").find("tr.ms-itmhover:Contains('Faucets')").show(); 

      $("#WebPartWPQ2").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ2").find("tr.ms-itmhover:Contains('Faucets')").show(); 

      $("#WebPartWPQ8").find("tr.ms-itmhover:not(:Contains('Faucets'))").hide(); 
      $("#WebPartWPQ8").find("tr.ms-itmhover:Contains('Faucets')").show() 
      ButtonValue = "Faucets" 

      }); 

$("input.search").change(function() { 
       var txt = $("input.search").val(); 



     if (txt) { 
       //alert("VN : " + VN); 
       //alert(".change() called"); 

      //Vendor List 
      $("#WebPartWPQ5").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ5").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+")").show(); 

      //Manufacturer Reps 
      // Logic to see search value is numeric then search using the company name 
      $("#WebPartWPQ6").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ6").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+")").show(); 

      //Vendor Contact List 
      $("#WebPartWPQ4").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ4").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+")").show(); 

      //Vendor Document List 
      $("#WebPartWPQ7").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ7").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+")").show(); 

      // Vendor Details 
      $("#WebPartWPQ2").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ2").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+")").show(); 

      // Product Lines 
      $("#WebPartWPQ8").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
      $("#WebPartWPQ8").find("tr.ms-itmhover:Contains("+txt+ "+ButtonValue+"")").show(); 

      } else { 

       $("#WebPartWPQ6").find("tr.ms-itmhover").show(); 
       $("#WebPartWPQ7").find("tr.ms-itmhover").show(); 
       $("#WebPartWPQ4").find("tr.ms-itmhover").show(); 
       $("#WebPartWPQ8").find("tr.ms-itmhover").show(); 
       $("#WebPartWPQ2").find("tr.ms-itmhover").show(); 
       $("#WebPartWPQ5").find("tr.ms-itmhover").show();   
      } 
      }).keyup(function(){$(this).change(); 
     }); 


$("#button1").click(function() { 
     $.ajax('/forward'); 
     $('button1').removeClass('active'); 
     $(this).addClass('active'); 
}); 
+0

dizeye tam eşleme arayın olacağını içerir. Senin başarmaya çalıştığın şey bu mu? – DinoMyte

+0

@DinoMyte Nope. Tam bir eşleşme değil. Bunu yapmanın doğru yolu 'gibi' olur mu? –

cevap

0

Haklısınız txt değişkeni önce ilk satırda bir '+' eksik:

$("#WebPartWPQ5").find("tr.ms-itmhover:not(:Contains("+txt+" "+ButtonValue+"))").hide(); 
$("#WebPartWPQ5").find("tr.ms-itmhover:Contains("+txt+" "+ButtonValue+"))").show(); 
0

metin oluşum seyir için bir ya olduğundan, 2 ayrı :contains tanımlamanız gerekir seçiciler.

$("#WebPartWPQ5").find("tr.ms-itmhover td").hide(); 
$("#WebPartWPQ5 tr.ms-itmhover td:contains("+txt+"), #WebPartWPQ5 tr.ms-itmhover td:contains("+ButtonValue+")").show(); 

Örnek: https://jsfiddle.net/uyk0kopq/2/

+0

Teşekkürler. Bu benim uygulama için istediğini tam olarak işe yaramadı ... Bir SharePoint tablosunda ve belirtilen dizeleri olan bu sorguya göre tüm bir satır dönmek gerekiyordu. Herhangi bir fikir? –

+0

'içerir' dizesi aramaları için kullanılır. Txt, tr içinde ButtonValue html öğeleri var mı? – DinoMyte

+0

Evet öyle. Yukarıda yayınladığım sorgu 'ButtonValue' değişkeni olmadan çalışır. Sorguya 'ButtonValue' ek koşulunu ekleme konusunda sorun yaşıyorum. –

İlgili konular