2016-06-05 8 views
0

hier entfernen, ist der Code:JQuery hinzufügen und mehr divs mit einem Klick

$('.add').click(function() { 

var description = $('#description').val(); 
$(".append_data").append('<div class="row" style="background: #e6e6e6; color: #666; border-bottom: solid 1px #fff;"><div class="col-md-3"><input type="text" name="1"></div><div class="col-md-5"><input type="text" name="2"></div><div class="col-md-2"><input type="text" name="3"></div><div class="col-md-2"><input type="text" name="4"></div></div><div class="remove">Remove</div>'); 

}); 

$('.append_data').on('click', '.remove', function(e) { 
    //alert('boom'); 
    e.preventDefault(); 
    $(this).closest('.row').remove(); 
    return false; 
}); 

Hier ist der Fiddle Code: https://jsfiddle.net/L7su5ke7/

Es mehrere divs fügt hinzu, alles in Ordnung. Aber wie kann ich diese mit einem Klick löschen - leider! Ich habe nicht herausgefunden (( Ich habe versucht, "am nächsten" und "Eltern" beide ohne Glück

Antwort

1

Was ich getan habe ist, dass ich diesen HTML-Code eingeschlossen, die Sie dynamisch mit einem anderen <div>

$('.add').click(function() { 

var description = $('#description').val(); 
$(".append_data").append('<div><div class="row" style="background: #e6e6e6; color: #666; border-bottom: solid 1px #fff;"><div class="col-md-3"><input type="text" name="1"></div><div class="col-md-5"><input type="text" name="2"></div><div class="col-md-2"><input type="text" name="3"></div><div class="col-md-2"><input type="text" name="4"></div></div><div class="remove">Remove</div></div>'); 

}); 

$('.append_data').on('click', '.remove', function(e) { 
    e.preventDefault(); 
    $(this).parent().remove(); 
}); 

Dann fügen Sie einfach den Eltern entfernt, wenn die Schaltfläche Entfernen geklickt wird!

-Link: jsfiddle link

+1

Hails Akhilesh! Vielen Dank - das funktioniert so wie es sollte. Keine Chancen zu vermeiden, diesen zusätzlichen DIV hinzuzufügen? – Rossitten

+1

Es ist einfacher so! Andernfalls könnten Sie vermeiden, diesen DIV hinzuzufügen. Verschieben Sie stattdessen einfach '

Remove
' kurz vor dem schließenden 'div' des' row' Elements. So dass es '
......
Remove
' –

+1

wird Perfect! Vielen Dank, Herr! – Rossitten

0

versuchen Sie dies:

$('.append_data').on('click', '.remove', function(e) { 
    $(this).parent().find('.row').each(function(){ 
    $(this).remove(); 
    }); 
    return false; 
}); 
+0

Dadurch werden alle divs entfernen ("Remove" divs obwohl bleiben wil) Unfortunatey -keine was ich suche. Danke – Rossitten

+0

fügen Sie einfach ein $ (this) .remove() vor dem Zurückgeben von false. und es wird auch nur die Zeile divs entfernen. –

0

https://jsfiddle.net/1z40zrqt/2/

$('.append_data').on('click', '.remove', function(e) { 

    e.preventDefault(); 

    $(this).parent().empty(); 
    return false; 
}); 
+0

Dieser Code wird alle Divs auf einmal entfernen Danke - nicht das, was ich suche. Akhilesh (Antwort oben) hat es fast perfekt gemacht. – Rossitten

0

Wie wäre es

$('.append_data').on('click', '.remove', function(e) { 
    //alert('boom'); 
    $('.row').remove(); 
    $('.remove').remove(); 

    return false; 
}); 
+0

Damit werden alle hinzugefügten divs entfernt. Dies wird nicht tun, auch wenn ich für den Vorschlag garteful – Rossitten

+0

@Rossitten: die akzeptierte Antwort entfernt auch alle divs. – Ejaz

+0

Nein. Es ist nicht - überprüfen th3 Geige: https://jsfiddle.net/L7su5ke7/7/ – Rossitten

Verwandte Themen