Dynamisch geplaatste button werkend krijgen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jovank vank

jovank vank

04/03/2015 17:22:26
Quote Anchor link
Ik heb het volgende probleem.
Ik heb de volgende button
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<div id="p1"><button id="hide">Wijzigen</button></div>

Als deze button wordt geactiveerd verdwijnt hij en verschijnt een form. Dat doe ik als volgt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
$(document).ready(function(){
  $("#hide").click(function(){
     $("#p1").html('');
     $("div#form1").append("<informatie van het form etc. etc.>");
  });
});


Dit werkt allemaal prima. Als het form wordt ingevuld en verstuurt wordt het met jquery.ajax afgehandeld. Dat gaat ook prima. Als dat is gebeurd dan wil ik dat het form verdwijnt en de button wijzigen weer terugkomt. Dat doe ik als volgt als onderdeel van de ajaxfunctie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
.....
success:function(result){
    ......
    $("#p1").html('<button id="hide">Wijzigen</button>')
}  


Dit werkt allemaal prima, maar de button heeft geen functie meer. Als je er weer op klikt gebeurt er nu niets. Heeft iemand een idee waar dit 'm in zit?
Gewijzigd op 04/03/2015 17:23:25 door Jovank vank
 
PHP hulp

PHP hulp

19/01/2019 22:58:23
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

04/03/2015 18:22:56
Quote Anchor link
Op het moment dat je de div leeg maakt is de button uit DOM verwijderd, dus ook de click eventlistener.
Als je de eventListener op de div met child button zet, wordt kan het wel:
Code (js)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$("#p1").on("click", "button#hide", function(e){
    e.stopPropagation();
    $("#p1").html('');
    $("div#form1").append("<informatie van het form etc. etc.>");
 });
`
 
Jovank vank

jovank vank

04/03/2015 18:34:13
Quote Anchor link
Verdraaid, het werkt. Thx Ger. Ik was er niet opgekomen!
En nu ik je toch aan de lijn heb:
Het form dat ik append, dat moet ik als één regel invoeren. Dus als ik een enter doe om op een nieuwe regel verder te gaan met de definities, dan werkt het niet. Is dat normaal voor een append-functie? Niet dat het ernstig is, maar het is niet overzichtelijk.

Toevoeging op 04/03/2015 18:34:33:

Verdraaid, het werkt. Thx Ger. Ik was er niet opgekomen!
En nu ik je toch aan de lijn heb:
Het form dat ik append, dat moet ik als één regel invoeren. Dus als ik een enter doe om op een nieuwe regel verder te gaan met de definities, dan werkt het niet. Is dat normaal voor een append-functie? Niet dat het ernstig is, maar het is niet overzichtelijk.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.