Bonjour;
je voudrais savoir si l'instruction : document.thisForm.submit() pouvait s'éxécuter sur une page ASPX avec la balise <Form id="thisForm" runat="Server"> .
si c'est non, y'a-t-il un moyen de contourné le probleme?
merci.
Bonjour;
je voudrais savoir si l'instruction : document.thisForm.submit() pouvait s'éxécuter sur une page ASPX avec la balise <Form id="thisForm" runat="Server"> .
si c'est non, y'a-t-il un moyen de contourné le probleme?
merci.
Salut,
Au final, .net génère du (X)HTML, donc oui on peut soumettre un formulaire en javascript.
salut, merci pour ta réponse;
d'accord mais la ça ne marche pas,quand je fait le submit(), la barre de progresse se bloque au milieu, et si je remplace le submit() par l'instruction alert("test") par exemple , ça marche bien, y'a forcément une incohérence entre le submit() qui s'éxécute coté client et le formulaire qui s'éxécute coté serveur avec le (runat="server"), non ?
Je viens de faire le test, ça fonctionne. Le problème vient plutôt de la compréhension du mécanisme de asp.net. Ce que tu fais est probablement bien plus compliqué que mon test.
Je transgresse les règles du forum pour te le montrer :Je t'encourage vivement à poster dans un forum asp.net.
Code ASPX : 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 <%@ Page Language="VB" %> <%@ Import Namespace="System.Web.UI.Page"%> <script id="page" runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Page.IsPostBack Then cwL.Text = cwT.Text End If End Sub </script> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title>Soumission de formulaire en javascript et asp.net</title> </head> <body> <form id="form1" runat="server"> <div> <asp:TextBox ID="cwT" runat="server"></asp:TextBox> <input type="button" name="b" id="b" value="valider" /> <asp:Label ID="cwL" Text="vide" runat="server"></asp:Label> </div> </form> <script type="text/javascript"> document.getElementById("b").onclick = function() { document.getElementById('form1').submit(); }; </script> </body> </html>
re ; désolé de t'avoir obliger a transgrésser les règles, j'ai bien poster dans un forum asp mais pas de réponse, c'est pour ça que je me suis tourné vers vous !
pour revenir au probleme, ton exemple fonctionne c'est vrai, mais en ajoutant une action (l'action ne contient qu'un message d'alert) dans la balises <form>
exemple :
et bien, dans ce cas , ça ne fonctionne pas.
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 <body> <form id="form1" runat="server" action="action_test.aspx"> <div> <asp:TextBox ID="cwT" runat="server"></asp:TextBox> <input type="button" name="b" id="b" value="valider" /> <asp:Label ID="cwL" Text="vide" runat="server"></asp:Label> </div> </form> <script type="text/javascript"> document.getElementById("b").onclick = function() { document.getElementById('form1').submit(); }; </script> </body>
enfin, je voulais dire que ça n'éxécute pas l'action.
Tu ne peux pas soumettre un formulaire de la sorte avec asp.net, en effet. Javascript est-il vraiment nécessaire?
J'ai posté une solution sans javascript dans le forum asp.net.
attention les Id des balises en runat="server" est généré , il faut passer par un petit bout de code pour récupérer le clientId
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 var monFormulaireID = '<%= formulaire.ClientID %>'
est ton ami fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes
Premier ministre du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts )
meci pour votre aide, mais j'ai décider de faire autrement c'est plus simple.
enffet, la page action me servait juste de récupérer les données du formulaire et de les enregistrer dans la base de données, j'ai décider d'ajouter une fonction dans le code béhinde et de l'affecter a un simple bouton, c'est plus simple.
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