2010-02-02 12 views
7

मैं jQuery का उपयोग करके एक टेबल पंक्ति को हटाने की कोशिश कर रहा हूं, और जब यह स्क्रीन से गायब हो जाता है, और इसलिए, फ़ायरबग में, काम करने लगता है, मैं अभी भी इसके लिए कोड देख सकता हूं। इस पंक्ति में फॉर्म तत्व हैं, और इसलिए, मैं समझना चाहता हूं कि पंक्ति वास्तव में हटाई जा रही है या नहीं, क्योंकि मैं उन मानों को सबमिट नहीं करना चाहता हूं। तो, वास्तव में हटा दें हटा दें? नीचे वह कोड है जिसका मैं उपयोग कर रहा हूं ... शायद मैं इसे गलत कर रहा हूं?jQuery ::: क्या वास्तव में हटा दें?

if($('.delete')) { 
      $(".delete").live('click', function(event) { 
       $(this).closest('tr').remove(); 
      }); 
     } 

उत्तर

9

पृष्ठ का स्रोत जावास्क्रिप्ट कार्यों के साथ अद्यतन नहीं होता है। यदि आप फायरबग में डीओएम का निरीक्षण करते हैं तो आपको प्रतिबिंबित परिवर्तनों को देखने में सक्षम होना चाहिए।

+0

मैं फायरबग में देख रहा हूं ... और, मैं अभी भी उस विशेष निकालने के लिए कोड देख रहा हूं। तो, शायद कुछ गलत है कि मैं इसे कैसे कर रहा हूं? क्या मैंने जो पोस्ट किया है उससे कुछ स्पष्ट है? – phpN00b

+0

क्या आप डोम को देख रहे हैं और स्रोत नहीं? – cjk

+0

सीके के नोट को स्पष्टीकरण के लिए, जीवित डॉम को फायरबग की मुख्य विंडो में एक पेड़ में पार्स किया गया है और संरचित किया गया है, जबकि HTML अनुभाग या स्क्रिप्ट अनुभाग में जो कोड आप देखते हैं वह प्रारंभिक रूप से लोड होने वाला स्थिर HTML है। जब भी जेएस परिवर्तन संरचना में किए जाते हैं, तो आप क्षेत्र में एक पीले रंग की हाइलाइट देखते हैं (और इसके परिणामस्वरूप, पेड़ तक सभी तरह से)। – dclowd9901

0

हां, jQuery का remove() वास्तव में डोम से तत्वों को हटा देता है।

शायद आपके कोड में कुछ गलत है।

1

यह आपके डीओएम से पूरी तरह से तत्व को हटा देता है। मुझे लगता है कि आप गलत तत्व को देख रहे हैं, क्योंकि यदि वास्तव में आपकी स्क्रीन पर इसे हटाया जा रहा है, तो फायरबग को परिवर्तन को प्रतिबिंबित करना चाहिए।

आपका कोड ठीक दिखता है।

.Remove() Reference

1

यह सही है। निकालें() विधि तत्वों को नहीं हटाती है। "jQuery में कार्रवाई" में लिखा गया है कि "ध्यान दें कि, कई अन्य jQuery कमांड के रूप में, इस आदेश के परिणामस्वरूप लपेटा गया सेट वापस कर दिया जाता है। डीओएम से हटाए गए तत्वों को अभी भी इस सेट द्वारा संदर्भित किया जाता है (और इसलिए नहीं अभी तक कचरा संग्रह के लिए eligble) और अन्य jQuery कमांड का उपयोग करने पर आगे संचालित किया जा सकता है ... " मैं खोज रहा हूं और यह एक jQuery नहीं लगता है जो वास्तव में तत्वों को हटा देता है। तो मुझे लगता है कि आपको पुराने डोम जावास्क्रिप्ट फ़ंक्शंस का उपयोग करना चाहिए।

0

हां यह करता है।

मैं दूसरे दिन इसके साथ खेल रहा था। आप फ़ायरबग (और अन्य ब्राउज़र डिबगर्स) में देख सकते हैं कि तत्व गायब हो जाता है।

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