La question est dans le titre, je souhaite afficher une boîte de dialogue avec un bouton ok et un bouton annuler.
La question est dans le titre, je souhaite afficher une boîte de dialogue avec un bouton ok et un bouton annuler.
En javascript tu as la fonction confirm() qui permet de faire ca.
Et pour mettre ton javascript depuis ton code Java, plusieurs options dont
http://cwiki.apache.org/WICKET/calli...s-onclick.html et les templates
++
Merci d'utiliser le bouton [Résolu] pour les sujets qui le sont.
[pub]mon blog franco anglais, article du moment: Wicket: fournir des données JSON via Ajax[/pub]
Ok, mais comment je fais pour récupérer la valeur de retour de confirm() ?
Bonjour,
en fait la fonction confirm prend en parametre le message que tu veux afficher et te renvoi "true" si tu clique sur OK et "false" si tu clique sur Annuler.
Donc tu peux faire un code du style :
if(confirm('Êtes vous sur de vouloir faire cela?')){
//code qui s'execute si tu clique sur OK
} else {
//code qui s'execute si tu clique sur Annuler
}
Voila en espérant que cela te servira
++
Ca, c'est du JavaScript !! Le code que je dois exécuter en cas de validation ou annulation est écrit en wicket, donc je ne peux pas appeler ces fonctions en JS.
J'ai tout de même un peu avancé :
Apparemment, la fonction onClick() est appelée lorsque le bouton "valider" de la boite de dialogue est cliquée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SimpleAttributeModifier behavior = new SimpleAttributeModifier("onclick", "return confirm('valider');"); Link<SouscriptionPage> link = new Link<SouscriptionPage>("validation") { @Override public void onClick() { [...] } }; link.add(new Image("...", "...")); link.add(behavior);
Le problème est que j'ai aussi besoin de savoir quand le bouton "annuler" est cliqué. Or il ne semble pas y avoir d'évènement rattaché à ce bouton.
Désolé mais je ne connais pas le wicket. Je pensais que tu voulais du javascript comme tu n'avais pas précisé le langage.
Là je ne peux plus t'aider désolé.
Bon courage et bonne continuation
++
As tu essayé cela : http://cwiki.apache.org/WICKET/calli...s-onclick.html
=> je pense que si la personne clique cancel sur l'alert affichée, alors tout simplement le retour serveur n'est pas fait.
dans le cas d'un link, cela signifie que onClick n'est pas appelé.
=> je dis ça sans avoir vérifié plus en détails : j'aurai le temps ce soir.
++
Merci d'utiliser le bouton [Résolu] pour les sujets qui le sont.
[pub]mon blog franco anglais, article du moment: Wicket: fournir des données JSON via Ajax[/pub]
Dans mon cas, j'ai absolument besoin de recevoir un évènement si l'utilisateur clique sur annuler.
Finalement j'ai trouvé une solution. Je crée ma propre boite de dialogue avec la classe org.apache.wicket.extensions.ajax.markup.html.modal.ModalWindow.
perso je réfléchirai à 2 fois avant d'aller vers des modal windows, car elles sont toutes autres choses qu'une simple fenêtre d'alerte javascript : elles impliquent une autre page map (essaie de faire une redirection depuis une modal windows), des complications au niveau des callbacks (pb au niveau de la sérialisation des données) et un comportement bien particulier (essaie de fermer une page où une modal windows est définie par exemple). Elles sont au final pas si simple à manier, comme le montre une telle requete :
http://old.nabble.com/forum/Search.j...+windows+issue
Bref, c'est vraiment sortir l'artillerie lourde et complexe pour qqchose d'à priori bien plus simple.
![]()
Merci d'utiliser le bouton [Résolu] pour les sujets qui le sont.
[pub]mon blog franco anglais, article du moment: Wicket: fournir des données JSON via Ajax[/pub]
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager