div

2010-04-15 13 views
42

से आंतरिक HTML हटाएं मैं इसे दोहराने से पहले div के आंतरिक HTML को साफ़ करने का प्रयास कर रहा हूं। मैंने removeData() को निकालने का प्रयास किया लेकिन एक बार इसे कॉल करने के बाद, जब मैं डेटा जोड़ने की कोशिश करता हूं, तो मुझे हटाने के बाद अगली पंक्ति से कुछ भी नहीं मिलता है, जबकि अगर मैं removeData() को हटा देता हूं तो यह ठीक है। इससे पहले कि मैं इसे फिर से तैयार करता हूं, मैं बस उस div में किसी भी पिछली सामग्री को साफ़ करना चाहता हूं।div

divToUpdate.removeData(); //clean out any existing innerHTML div content first 
    divToUpdate.html(data); 

यह यह कभी नहीं किसी कारण से मेरी divToUpdate.html (डेटा) के लिए हो जाता है जैसे कि यह कॉल के बाद लग रहा है कि removeData();

+0

इस घटना के कारण क्या है? एक ऑनक्लिक या अजाक्स प्रतिक्रिया? –

उत्तर

1

तुम सिर्फ पिछले डेटा

9
$('div').html(''); 

लेकिन तुम क्यों समाशोधन रहे हैं, divToUpdate.html(data); पूरी तरह से पुराने एचटीएमएल का स्थान ले लेगा निकाले बिना ही इसे अधिलेखित करने में सक्षम होना चाहिए।

$('#mysweetdiv').empty(); 

.removeData() और इसी .data() समारोह एक तत्व के पीछे डेटा संलग्न करने के लिए उपयोग किया जाता है, का कहना है कि अगर आप ध्यान दें कि एक विशिष्ट सूची तत्व यूजर आईडी के लिए भेजा चाहता था:

+0

क्योंकि मेरा मानना ​​है कि जब भी मैं jQuery UI संवाद – PositiveGuy

+0

को बंद और दोबारा खोलता हूं, तो मूल पृष्ठ में div पुराने आंतरिक HTML को बनाए रखता है, आप इसे कैसे जानते हैं? आप क्या संदर्भ दे रहे हैं जो आपको div सामग्री को देखने के अलावा अन्य बताता है जो इसे साफ़ करता है? – PositiveGuy

+0

jQuery प्रलेखन में (http://api.jquery.com/html/) "प्रत्येक मिलान किए गए तत्व की सामग्री के रूप में सेट करने के लिए HTML की एक स्ट्रिंग।" मैं प्रतिस्थापन के लिए "सेट" काम की व्याख्या करता हूं। इसे सत्यापित करने के लिए मैं सत्यापित करने के लिए कोड की दो पंक्तियों के बीच चेतावनी ($ ('div')। Html()) जैसे कुछ कर सकता था। –

21

अपने div से सभी बच्चे तत्वों को निकालने के लिए 25 आपके डेटाबेस में:

var $li = $('<li>Joe</li>').data('id', 25); 
+0

इस ली का उपयोग कैसे करें? – Omer

98

jQuery डेटा HTML की तुलना में एक अलग अवधारणा है। निकालेंडेटा तत्व सामग्री को हटाने के लिए नहीं है, यह आपके द्वारा पहले संग्रहीत डेटा आइटम को निकालने के लिए है।

बस

divToUpdate.html(""); 

या

divToUpdate.empty(); 
1

var $div = $('#desiredDiv'); 
$div.contents().remove(); 
$div.html('<p>This is new HTML.</p>'); 

कि ठीक से काम करना चाहिए है।