J'ai une application Grails avec un formulaire dedans. Une fois que l'utilisateur a entré les données et les a soumises, et qu'il a été validé etc. J'ai besoin d'un message pour faire apparaître une petite fenêtre pour donner à l'utilisateur une rétroaction - il doit apparaître, plutôt que d'être affiché sur la page. Quelqu'un peut-il me conseiller sur la meilleure façon de le faire?fenêtre de message popup dans les grails?
0
A
Répondre
3
J'ai implémenté le même mécanisme pour mon application, et j'utilise le plugin jQuery 'smartmodal' (utilisé par le plugin Nimble à l'origine). Voir here
Il vous suffit de rediriger la requête dans le code de validation de commande à une page GSP contenant le code suivant:
<script type="text/javascript" src="${resource(file: 'jquery-1.3.2.js')}"></script>
<script type="text/javascript" src="${resource(file:'jquery.smartmodal.js')}"></script>
<LINK rel="stylesheet" href="./css/smartmodal.css">
...
<body>
...
<g:javascript>
$(function() {
$("#msg").hide();
$("#msg").modal({hide_on_overlay_click:false});
$("#msg").modal_show();});
</g:javascript>
<div id="msg">
My feedback message is here
</div>
<g:link controller="..." action="...">Close</g:link>
J'espère que cela aide,
Fabien
EDIT: Un extrait du fichier smartmodal.css
qui affichera «l'effet modal» est:
#modal_content {
display: none;
position: fixed;
left: 50%;
padding: 0px;
top: 10%;
background: #FFF;
border: 0px solid #d2d2d2;
width: 400px;
margin-left: -200px;
text-align: left;
}
#modal_overlay {
background-color: #000;
}
Toutefois, si vous voulez que le dossier complet, il est disponible à l'intérieur des grands Nimble Grails de plugin
Salut, merci pour cela - je me bats un peu avec elle cependant, quand il redirige ouvre cela dans le fenêtre principale plutôt qu'une petite fenêtre. Une idée d'où je vais mal? – ellander
Si la fenêtre principale apparaît à la place de la fenêtre modale, cela signifie que la fonction 'modal_show()' n'est pas appelée ou que le fichier CSS smartmodal.css n'est pas inclus. Je vérifierais que les fichiers JS et CSS sont inclus dans votre page html. J'ai mis à jour le code pour inclure le fichier CSS – fabien7474
ok super, je ne pouvais trouver un modal.css dans le zip du lien que vous avez suggéré, mais cela ne semble pas fonctionner - est le smartmodal.css différent du modal.css un? merci beaucoup pour votre aide – ellander