Bonjour,
J'ai un soucis dans le développement d'un formulaire, en effet il doit être possible d'ajouter une pièce jointe (contrôle FileUpload) et à l'aide de 2 boutons + et -, d'ajouter des champs de saisie.
Globalement les boutons + et - fonctionnent bien (encore que cédant à la facilité, j'ai juste créé 10 champs en visible=false et les boutons se contentent de les faire apparaitre...)
SAUF QUE, quand on a ajouté une pièce jointe dans le FileUpload et que l'on clique sur l'un de ces boutons, le fichier contenu dans le FileUpload disparait!
Je ne comprend pas pourquoi, j'ai cherché un peu partout et la réponse la plus courante est "Mets un trigger sur le bouton"... Sauf que ça ne change rien ^^;
Voici le code source simplifié afin de ne laisser que les parties concernées ^^
Je vous remercie par avance pour votre aide ^^
Code : 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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41 <asp:UpdatePanel ID="upMain" runat="server"> <ContentTemplate> <div> <div> <div id="formularyBody"> <div> <div> <asp:Label ID="lblPJ" runat="server" CssClass="formularyItemLeft" Text="Ajout d'une pièce jointe : " /> <asp:FileUpload runat="server" ID="fuPJ"/> </div> </div> <div> <asp:Label ID="lblDVD" runat="server" Text="DVDs : " /> <asp:TextBox ID="tbNbDVD" runat="server" Text="0" /> <asp:Button ID="btnNbDVDPlus" runat="server" Text="+" onclick="btnNbDVDPlus_Click" /> <asp:Button ID="btnNbDVDMoins" runat="server" Text="-" onclick="btnNbDVDMoins_Click" /> <div id="DVDs" runat="server"> <div> <asp:Label ID="lblDVD01" runat="server" Text="DVD 01 : " Visible="false" /> <asp:TextBox runat="server" ID="tbDVD01" Visible="false" /> </div> <div> <asp:Label ID="lblDVD02" runat="server" Text="DVD 02 : " Visible="false" /> <asp:TextBox runat="server" ID="tbDVD02" Visible="false" /> </div> </div> </div> </div> <div id="formularyFooter"> <asp:Button runat="server" ID="btnCreate" Text="Créer" onclick="btnCreate_Click" /> <br /> <asp:Label ID="lblOut" runat="server"></asp:Label> </div> </div> </div> </ContentTemplate> <Triggers> <asp:PostBackTrigger ControlID="btnCreate" /> </Triggers> </asp:UpdatePanel>
Olivier
Partager