2017-05-10 5 views
2

Ich arbeite an MVC5 Projekt, dort bin ich dynamisch erstellen <a></a> Attribut mit Entfernen-Taste.Wie kann ich Elemente aus div entfernen?

jQuery,

$("#divbindProjectlist").append('<a href="#" class="list-group-item projectList" ><span class="project-name">' + json.ProjectName + '</span><i class="pull-right close-p">x</i><input type="hidden" class="hidprojectId" value="' + json.idPartnerProject + '" /></a>');
<div id="divbindProjectlist" class="left-top-p"> 
 
    <a class="list-group-item active left-menu-head">Projects List</a> 
 
    <a href="#" class="list-group-item projectList"><span class="project-name">Test1</span><i class="pull-right close-p">x</i><input type="hidden" class="hidprojectId" value="0.48063279870308406"></a> 
 
    <a href="#" class="list-group-item projectList"><span class="project-name">test2</span><i class="pull-right close-p">x</i><input type="hidden" class="hidprojectId" value="0.15416046484845514"></a> 
 
</div>

Hier Wie kann ich entfernen die jeweils <a></a> Attribut in Bezug auf Entfernen klicken?

Bitte helfen Sie mir ...

+0

gelöst werden kann, ich glaube, Sie " Tag" nicht Attribut gemeint. –

Antwort

0
$(document).ready(function (e) { 
     $("i.close-p").click(function() {    
      $(this).parent("a").remove(); 
     }); 
    }); 

diese Weise wird das Problem

+0

korrigiert. Vielen Dank. –

0

Es kann so etwas wie dieses

$("#divbindProjectlist").find('a.projectList').click(function(){ this.remove(); }); 

sein Dies wird einen Click-Ereignishandler für Tags anhängen, wenn sie angeklickt werden, werden sie aus dem Dom entfernt werden. mehrere Event-Listener vorsicht allerdings nicht registrieren (wie ich glaube, Sie dynamisch mehr anhängen wird als 1mal)

Für nicht mehrere Zuhörer Befestigen Sie können es tun, wie diese

var addingTag = $('<a href="#" class="list-group-item projectList" ><span class="project-name">' + json.ProjectName + '</span><i class="pull-right close-p">x</i><input type="hidden" class="hidprojectId" value="' + json.idPartnerProject + '" /></a>'); 
$("#divbindProjectlist").append(addingTag); 
addingTag.click(function(){ this.remove(); }); 

Der obige Code ein schaffen wird ein Tag und fügen Sie es an Ihr div an und es fügt ein Ereignis für zusätzliches Tag nur über seine Referenz an.

+0

Ja, ich füge mehr als Artikel zu dieser div 'divbindProjectlist' hinzu. –

+0

aber ich habe bereits das click-Ereignis wie 'jQuery (Dokument) .on ("click", ".projectList", Funktion (e) {' zum Binden einiger HTML-Steuerelemente in der Nähe von diesem div 'divbindProjectlist', dann Wie kann ich trage diese auch entfernen? –

+0

Ich habe meinen Code für Ihre Bedürfnisse bearbeitet. In JS-Events müssen "nach" Elemente erstellt werden. Ereignisse davor angefügt werden keine neu erstellten Elemente. –

0
$("#divbindProjectlist").on("click", "a", function() { 
      $(this).remove(); 
     }) 

löst dieses Problem

+0

Wie kann ich die entfernen, wenn Sie auf x dieser Knopf? das ist eigentlich ich brauche. –

Verwandte Themen