2015-12-22 3 views
5

हटाने से रोकने के लिए कैसे करें मैंने क्लोन तत्व फ़ंक्शन बनाया है जिसे view demo here देखा जा सकता है। जब रीसेट बटन दबाया जाता है तो यह सभी क्लोन आइटम तत्वों को हटा देता है, हालांकि आइटम सूची में कोई अन्य आइटम जोड़ने का प्रयास करते समय, 'नया' जोड़ा गया आइटम डोम के साथ दिखाई नहीं देता है। इस सेjQuery .remove() को मूल वर्ग

var eleClone = $('list-items').clone(true); 

:

$('#add-btn').on('click',function(){ 
    $('.list-items:first').clone().appendTo("#items").addClass('isVisible'); 
    $('#items-fields').val(''); 
}) 

// RESET BUTTON 
$('.reset').on('click', function(){ 
    if($('.list-items').length != 1); 
    $('.list-items:last').remove(); 
    event.preventDefault(); 
}) 
+0

आपको यह निर्दिष्ट करने की आवश्यकता है कि आप कौन सा आइटम निकालना चाहते हैं। जब आप कक्षा के नाम का उपयोग करते हैं तो इस वर्ग के सभी तत्व प्रभावित होंगे। यदि आप सहायता पोस्ट प्राप्त करना सुनिश्चित करना चाहते हैं तो कृपया सभी प्रासंगिक कोड, इसलिए व्यवहार को अनुकरण करना संभव है। – Franco

+0

@ फ्रैंको जब तक कि मैंने अपना प्रश्न खराब रूप से लिखा नहीं है, यह काफी आत्म व्याख्यात्मक है .. जिन तत्वों को मैं हटाना चाहता हूं वे हैं '.list-items' जो डेमो में प्रदर्शित होते हैं और कोड में लिखे जाते हैं। (वे वर्तमान समारोह के साथ हटा रहे हैं)। यदि आप डेमो देखते हैं तो आप नोटिस करेंगे कि जब उपयोगकर्ता रीसेट बटन दबाता है तो सभी आइटम हटा दिए जाते हैं, जब आप नई वस्तुओं को जोड़ने का प्रयास करते हैं तो वे डीओएम पर दिखाई नहीं देते हैं, फिर प्रश्न में लिखे गए हैं और डेमो – NewKidOnTheBlock

+0

में दिखाया गया है कि, और मैंने यह भी देखा कि आपने इस से पहले एक अन्य प्रश्न पोस्ट किया है। जैसा कि आप देख सकते हैं, आपको मुट्ठी के लिए ज्यादा प्रतिक्रिया नहीं मिली और आप निश्चित रूप से अपनी इच्छानुसार काम कर सकते हैं। मैं आपको अपनी समस्या के लिए एक अच्छे उत्तर पर अपना मौका बढ़ाने की सलाह दे रहा था। – Franco

उत्तर

1

आप कहाँ अपने रीसेट बटन में कोड बदलने अपने यदि निम्न

$('.reset').on('click', function(){ 
    if($('.list-items').length > 1) { 
     $('.list-items:last').remove(); 
    } 
}) 

पल आप अपनी सूची में आइटम निम्नलिखित तरीके से निर्धारित किया है पर करने के लिए बयान ..

When a user clicks the delete button, if the number of things with the class list-item does not equal 0, then remove the last list-item 

आप इसे कोड बदलने की जरूरत है, इसलिए यह निम्न कार्य करता है:

When a user clicks the delete button, if the number of things with the class list-item is greater than 1, then remove the last list-item 
1

आप इस बदलना चाहिए

var eleClone = $('.list-items').clone(true); 

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

+0

मैंने यह कोशिश की है लेकिन क्लोन तत्व – NewKidOnTheBlock

+0

सुनिश्चित नहीं करता है, यह आदेश प्रत्येक सूची आइटम को eleClone सामग्री द्वारा प्रतिस्थापित करेगा। –

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