2012-02-23 11 views
14

रखें, मैं शीर्षलेख को छोड़कर मेरी तालिका की सभी पंक्तियों को हटाना चाहता हूं।तालिका की सभी पंक्तियों को कैसे हटाएं लेकिन शीर्षलेख

यह मैं क्या कोशिश की है है लेकिन यह हमेशा सभी पंक्तियों और हैडर हटाता है:

$("#<%=tblDetailFourn.ClientID%> tbody tr").remove(); 

$("#<%=tblDetailFourn.ClientID%> tbody tr").not("thead tr").remove(); 

$("#<%=tblDetailFourn.ClientID%> tr").not("thead tr").remove(); 

$("#<%=tblDetailFourn.ClientID%> tbody").not("thead").remove(); 

$("#<%=tblDetailFourn.ClientID%> tbody").remove(); 

$("#<%=tblDetailFourn.ClientID%> > tbody").remove(); 

यहाँ एचटीएमएल है:

<table id="tblDetailFourn" runat="server" class="ProjetTable ProjetTableHover"> 
    <thead> 
     <tr> 
      <th style="width:200px">Rôle de Ressource</th> 
      <th style="width:200px">Nom Prénom</th> 
      <th style="width:120px">Tel</th> 
      <th style="width:200px">Courriel</th> 
      <th style="width:80px">Actif</th> 
      <th style="width:33px"></th> 
      <th style="width:33px"></th> 
     </tr> 
    </thead> 
    <tbody> 
    </tbody> 
</table> 
+0

तालिका शरीर के किसी भी पंक्तियां नहीं ??? ऐसा लगता है जैसे यह काम करता है ??? –

+1

'$ (" # <% = tblDetailFourn.ClientID%> tbody tr ")। हटाएं();' सही है। जब आप स्क्रिप्ट चलाते हैं तो वास्तव में क्या हो रहा है? – jrummell

+0

कि केवल संरचना है। मैं इसे AJAX – Marc

उत्तर

11

उपयोग करने का प्रयास करें:

$('#<%=tblDetailFourn.ClientID%> tr').not(function(){ return !!$(this).has('th').length; }).remove(); 
+0

वाह, मैंने सोचा कि यह इससे कहीं अधिक आसान होगा। मुझे नहीं पता कि यह जिस तरह से मैंने कोशिश की है, वह काम क्यों नहीं करती है लेकिन आपका काम करता है !! धन्यवाद – Marc

2

यह काम करना चाहिए, यह सोचते हैं कि आप किसी भी नहीं है कि शीर्ष में हेडर तत्व।

$("#<%=tblDetailFourn.ClientID%> tbody tr").remove(); 
10

http://api.jquery.com/child-selector/

$("#<%=tblDetailFourn.ClientID%> > tbody > tr").remove(); 

क्या आपके पास हालांकि काम करना चाहिए की कोशिश करो।

+0

काम नहीं करती है :( – Marc

+0

@Marc यह संभव हो सकता है कि आपके पास कहीं जावास्क्रिप्ट त्रुटि हो या HTML प्रारूपण समस्या (अनुपलब्ध टैग टैग इत्यादि) जो JQuery को फेंक रहा है .. –

4

के बारे में क्या:

$('#tblDetailFourn tbody').html('');

jsfiddle

+0

काम नहीं करता है :( – Marc

+0

यकीन है कि यह करता है। मेरा jsfiddle लिंक, जावास्क्रिप्ट को टिप्पणी करें और इसे फिर से चलाएं और आपको डेटा दिखाई देगा। – SenorAmor

+0

आसान और क्लीनर –

2

आप इस ?:

$("#<%=tblDetailFourn.ClientID%> tbody").html('') 
+0

काम नहीं करता है :( – Marc

40
012 की कोशिश की है
+0

एक आकर्षण की तरह काम करता है! धन्यवाद! –

+0

जॉर्ज! तुम मेरे हीरो हो! यह सही उत्तर होना चाहिए। – Patricia

0

एचटीएमएल आप समाधान प्रदान के आधार पर

$("#tblDetailFourn tbody").empty(); 

पीछा कर रहा है यह पूरी तरह से काम करेंगे।

धन्यवाद

0
$('#tblDetailFourn > tbody > tr > td').parent('tr').empty(); 
+0

** समीक्षा कतार से **: क्या मैं आपसे अनुरोध कर सकता हूं कि कृपया अपने स्रोत कोड के आसपास कुछ संदर्भ जोड़ें। कोड केवल जवाब समझना मुश्किल है। यदि आप अपनी पोस्ट में अधिक जानकारी जोड़ सकते हैं तो यह पूछने वाले और भावी पाठकों दोनों की मदद करेगा। – RBT

+0

माफी, मूल रूप से क्या हो रहा है, आप प्रारंभ में तालिका नाम (#tblDetailFourn) का संदर्भ लेते हैं,> जो कुछ भी आप संदर्भित करते हैं उसके लिए बच्चे टैग पाता है (इस मामले में 'tbody'), यह बच्चे टैग 'tr' पाता है, और इसके लिए प्रत्येक 'tr' टैग मिला, बाल टैग 'td' स्थित है; 'td' डेटा हेडर के बजाय डेटा पंक्ति इंगित करता है (जो 'वें' टैग का उपयोग करना चाहिए), इस पंक्ति को खाली करने की आवश्यकता है, इस 'टीडी' टैग के पंक्ति टैग को खोजने के लिए, ".parent ('tr') संलग्न करें ", यह सुनिश्चित करता है कि केवल पंक्तियां जिनमें डेटा और हेडर हेडर शामिल हैं, को" .empty() 'के " – GuestFirstPost