Bonjour,
Je développe sous ASP.NET Framework 4.8 et je bloque quelque peu.
J'ai ma page _Partial.cshtml qui affiche un tableau de données (je simplifie quelque peu, car j'ai une mise en forme assez avancée avec chargement dynamique en AJAX notamment).
Je souhaiterais modifier les lignes du tableau dans une fenêtre de dialogue.
J'ai implémenté le code du dialogue dans un fichier à part _Edit.cshtml (histoire de mettre un peu d'ordre), mais le "template" (header, avec boutton pour réduire, agrandire, etc.) du dialogue est implémenté dans _Partial.cshtml.
_Partial.cshtml
Code CSHTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 <div class="item"> <table id="fields"> <!-- ... --> </table> </div> <div id="edit-dialog-overlay" class="modal-overlay"> <!-- Template --> <div id="edit-dialog" class="modal-content container-vertical"> <div class="modal-header container-horizontal column-gap-narrow item"> <span id="minimize" class="icon pushed-right item"></span> <span id="maximize" class="icon item"></span> <span id="restore" class="icon item"></span> <span id="close" class="icon item"></span> </div> <div class="modal-body item"> @Html.Partial("~/Views/Fields/_Edit.cshtml", Model.Field) </div> </div> </div>
Dans le dialog _Edit.cshtml, j'ai notamment les boutons Validate et Cancel. Comment est-il possible de fermer le dialogue (ou plus exactement le masquer) lorsque Cancel est cliqué (ça se ferme par contre très bien lorsque je clique sur la croix du "template" du dialogue) ?
Code JavaScript : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 $('#cancel').click(function (event) { event.preventDefault(); // Parent view. $('#edit-dialog-overlay').css('hide'); });
#edit-dialog-overlay appartient à _Partial.cshtml, mais ne semble pas être "connu" dans la vue enfant _Edit.cshtml.
Ps : je suis entrain d'apprendre l'utilisation de signalR pour des communications full-duplex (bon OK, je mélange un peu tout), mais ça me semble quand même un peu être l'artillerie lourde pour "ricocher" (via le contrôlleur) d'une vue à une autre...
Merci
Partager