मैं जावास्क्रिप्ट का उपयोग करके div की सामग्री को कैसे साफ़ करूँ? [बन्द है]


152

जब उपयोगकर्ता मेरे पृष्ठ पर एक बटन क्लिक करता है, तो एक div की सामग्री को साफ़ किया जाना चाहिए। मैं इसे कैसे पूरा करूंगा?


जवाबों:


270

बस जावास्क्रिप्ट (अनुरोध के अनुसार)

इस फ़ंक्शन को अपने पृष्ठ पर कहीं (अधिमानतः <head>) जोड़ें

function clearBox(elementID)
{
    document.getElementById(elementID).innerHTML = "";
}

फिर क्लिक इवेंट पर बटन जोड़ें:

<button onclick="clearBox('cart_item')" />

JQuery में (संदर्भ के लिए)

यदि आप JQuery पसंद करते हैं तो आप कर सकते हैं:

$("#cart_item").html("");

50
वैकल्पिक jQuery:$("#cart_item").empty();
रोब एलन

क्या आप .detach () का भी उपयोग कर सकते हैं?
रायनपी 13

@ टॉम गुलेन ने DIV की आईडी को फंक्शन में पास किए बिना मेरे लिए काम किया, और फंक्शन में elementID के चारों ओर सिंगल कोट्स के साथ काम किया। इसके लिए धन्यवाद!
DPSSpatial

3
@ टॉम गुलेन: कृपया यह नहीं है कि यह उस div के अंदर नोड्स से जुड़े ईवेंट हैंडलर को हटा नहीं सकता है।
bhavya_w

@Mic का उत्तर लगभग 250x तेज है। jsperf.com/innerhtml-vs-removechild
tleb

108

आप इसे DOM तरीके से भी कर सकते हैं:

var div = document.getElementById('cart_item');
while(div.firstChild){
    div.removeChild(div.firstChild);
}

1
शीर्ष के! JQuery के समान: $ ("# cart_item")। खाली (); केवल सामग्री पर ही नहीं बल्कि DOM पर भी अभिनय करें। महान!
पेड्रो फरेरा

क्या यह पसंद किया जाता है innerHTML = ''और यदि ऐसा है तो क्यों?
सुकिमा

1
इससे क्लीनर साफ लगता है innerHTML = ''। मैं व्यक्तिगत रूप से लाइनों के अतिरिक्त जोड़े को लिखूंगा
dmo

1
@ यह तरीका पसंदीदा उत्तर की तुलना में तेज़ है, इसलिए यदि आपको शॉर्ट कोड के बजाय बेहतर प्रदर्शन की आवश्यकता है तो यह आपका चयन है।
iiic

1
एक लाइनर के रूप मेंwhile(div.firstChild && div.removeChild(div.firstChild));
रसेल एल्फेनबिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.