2011-01-21 20 views
16

का उपयोग कर डीआईवी टैग निकालें मैं एक विशिष्ट मूल्य के साथ एक डीआईवी कैसे हटा सकता हूं?जावास्क्रिप्ट या Jquery

<div value="0" class="task_row"></div> 

मैं ऊपर div जो महत्व है निकालना चाहते 0.

+4

आप एक जावास्क्रिप्ट पुस्तकालय का उपयोग कर रहे हैं? क्या jQuery एक स्वीकार्य उत्तर होने जा रहा है? यदि ऐसा है, तो आप यह कर सकते हैं अगर jQuery: $ ('[value = "0"]')। हटाएं(); –

+3

मान div टैग की वैध विशेषता नहीं है। –

उत्तर

45

बेन रोवे टिप्पणी में बताते हैं के रूप में, value div टैग में एक मान्य विशेषता नहीं है। और दोनों jQuery समाधान और समाधान जो getElementsByTagName() का उपयोग करते हैं, उन्हें एक सूची के माध्यम से पुन: सक्रिय करना है, जो प्रदर्शन के लिए खराब है। मुझे लगता है कि बजाय एक id विशेषता बनाने एक बेहतर विकल्प है:

<div id="task_row_0" class="task_row"></div> 

और फिर तुम सिर्फ कर सकते हैं:

var div = document.getElementById("task_row_" + taskId); 
div.parentNode.removeChild(div); 
+2

आइए यथार्थवादी बनें। इस तरह के कुछ आसान करने के लिए jQuery की शून्य आवश्यकता है। –

+6

चलिए यहाँ और भी यथार्थवादी बनें। लोगों के टन jQuery का उपयोग करते हैं, इसलिए यदि वे पहले से ही इसका उपयोग कर रहे हैं, तो वे कोड की एक साधारण एकल पंक्ति के लिए क्यों नहीं जाएंगे। [इस जवाब के लिए +1 हालांकि यद्यपि मैं इस समय jQuery का उपयोग नहीं कर रहा हूं] – bergie3000

+0

jQuery कंप्यूटर संसाधनों को खाता है और कई टैब पर खोले जाने पर ब्राउज़र लटकता है, इसलिए कृपया इसका उपयोग न करें! – TomeeNS

3
var divs = document.getElementsByTagName('div'); 
for(var i = divs.length; i; i -= 1) { 
    if (divs[i].getAttribute('value') == 0) { 
     divs[i].parentNode.removeChild(divs[i]); 
    } 
} 
4

इस jQuery कोड)) है:

$('div').each(function(){ 
    if($(this).attr('value') == '0'){ 
    $(this).remove(); 
    } 
}); 
2

संपादित करें: कोई बात नहीं - Zhasulan मुझे यह करने के लिए हराया । : पी

jQuery के साथ

-

$('div').each(function(){ 
    if($(this).attr('value') == '0') { 
     $(this).hide(); 
     } 
    }); 
0

jQuery/जावास्क्रिप्ट को वैकल्पिक आप इसे केवल सीएसएस के माध्यम से प्राप्त कर सकते हैं -

JSFIDDLE

div[value="0"] { 
    display: none; 
} 

या jQuery विशेषता का उपयोग चयनकर्ता के माध्यम से:

JSFIDDLE

$("div[value='0']").hide(); /*.remove() as per your requirement*/ 
संबंधित मुद्दे