2012-09-24 13 views
5

मिलान करें तो क्या कोई मेरी मदद कर सकता है JQuery में कृपया? मेरे पास बाएंटेबल और दाएंटेबल पर समान कॉलम नामों के साथ दो टेबल हैं। बाएंटेबल मैं एक डीबी से भरता हूं, लेकिन दाएंटेबल इसमें कुछ पंक्तियां हैं। मैं क्या करना चाहता हूं बाएंटेबल में उन पंक्तियों को दिखाने (या निकालने) नहीं है जो दाएंटेबल में मौजूद हैं!दो टेबल पंक्तियों की तुलना करें और अगर

$("#tableLeft tr").each(function(){ 
    if($(this).find("td")[0].innerHTML == $("#tableRight tr").find("td")[0].innerHTML) 
    { 
     $(this).remove; 
    } 
}); 
+0

इस में मुश्किल कुछ भी नहीं है। निम्नलिखित jQuery कार्यों के बारे में जानकारी खोजें: एचटीएमएल() - तत्व का एचटीएमएल देता है, प्रत्येक() - प्रत्येक चयनित तत्वों के लिए विशेष फ़ंक्शन निष्पादित करने के लिए, हटाएं() - चयनित तत्व को हटाएं। – gotqn

उत्तर

2

मुझे लगता है आप कुछ इस तरह है:

<table id="T1"> 

    <tr><td>111</td></tr> 
    <tr><td>222</td></tr> 
    <tr><td>333</td></tr> 

</table> 


<table id="T2"> 

    <tr><td>444</td></tr> 
    <tr><td>111</td></tr> 
    <tr><td>333</td></tr> 

</table> 

आईडी के साथ तालिका से पंक्तियों को हटाने के लिए = "टी 2" आप कुछ इस तरह कर सकते हैं:

$('#T1 tr').each(function(){ 

    var currentRowHTML=$(this).html(); 

    $('#T2 tr').each(function(){ 
     if($(this).html()===currentRowHTML){ 
      $(this).remove(); 
     } 
    }); 
}); 
2

बस एक विचार

$(function(){ 
    $('#btn').on('click', function(e){ 
     $('#right_table tbody tr').each(function(){ 
      var row=$(this).html(); 
      $('#left_table tbody tr').each(function(){ 
       if(row==$(this).html()) $(this).remove(); 
      }); 
     }); 
    }); 
});​ 

DEMO:

मैं इस tryed।

मैंने पहले ही उल्लेख किया है कि यह केवल एक विचार है क्योंकि आपने कोई कोड (HTML) प्रदान नहीं किया है, इसलिए याद रखें कि दोनों तालिकाओं में पंक्तियों में समान (वर्ग/आईडी) होना चाहिए यदि उनके पास कोई है।

संबंधित मुद्दे