IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

problème maj Variable GET


Sujet :

ASP.NET

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 28
    Points : 21
    Points
    21
    Par défaut problème maj Variable GET
    Bonjour à tous !

    Voici mon problème : dans mon formulaire il y un champ qui lorsque que l’utilisateur modifie sa valeur puis appuie sur entrée la valeur en question se met dans la variable GET et se réaffiche dans la zone de texte en question la seul solution que j’ai trouvé pour faire cela et ceci (je suis ouvert à toute proposition qui serait préférable d’utiliser car je trouve ça pas super de rafraîchir à chaque fois la page mais j’ai besoin de cette variable en GET )

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            protected void txt_numPoint_OnTextChanged(object sender, EventArgs e)
            {
                Response.Redirect("gest_point.aspx?point=" + txt_numPoint.Text);
            }
    Avec un OnLoad de la page comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            protected void Page_Load(object sender, EventArgs e)
            {
     
                if (Request.Params.Get("point") != null)
                {
                    txt_numPoint.Text = Request.Params.Get("point");
                }
                else
                {
                    txt_numPoint.Text = "1";
                }
     
            }
    En fait c’est le OnLoad qui pose problème et plus particulièrement la ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	txt_numPoint.Text = Request.Params.Get("point");
    Puisqu’il dans le Request.Params.Get(“point”) c’est la valeur GET avant ma redirection qui est prise en compte. La valeur GET se modifie donc jamais.
    Auriez-vous une solution pour modifier la variable GET avant cette ligne ?

    Merci par avance !

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Points : 1 077
    Points
    1 077
    Par défaut
    A la place d'utiliser le page_load utilise le page_init ca devrait fonctionner.

    ton page_load écrase à chaque fois la valeur postée, tu as donc forcément toujours la valeur d'origine...

    C'est bete de faire un request juste pour faire un redirect ensuite. Vu le code, récupère la valeur de ton textbox en javascript et redirige ensuite aussi via javascript vers la bonne page...

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2016
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2016
    Messages : 28
    Points : 21
    Points
    21
    Par défaut
    Parfait merci avec le .init cela fonctionne cependant, ce qui m’intéresse c'est la partie java script que tu me préconises d'utiliser.

    Je m'y connais vraiment que très peu, j'utilise des web form j'ai donc mis dans la partie "html" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script runat ="server">
     
        function changePoint()
        {
            var numP = document.getElementById('txt_numPoint').value;
             window.open("gest_point.aspx?point="+numP);
     
        }
     
    </script>
    Et voici mon textbox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    <asp:TextBox ID="txt_numPoint" class = form-control runat="server" 
             Width ="125px" onClick="changePoint()"></asp:TextBox>
    Cependant j'ai des erreurs un peu partout aux mot "function" "''txt_numPoint''" "window" je ne m'y connais vraiment pas et me suis inspiré d'internet pour faire ça..

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    777
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2003
    Messages : 777
    Points : 1 077
    Points
    1 077
    Par défaut
    Citation Envoyé par damienla Voir le message
    Parfait merci avec le .init cela fonctionne cependant, ce qui m’intéresse c'est la partie java script que tu me préconises d'utiliser.

    Je m'y connais vraiment que très peu, j'utilise des web form j'ai donc mis dans la partie "html" :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <script runat ="server">
     
        function changePoint()
        {
            var numP = document.getElementById('txt_numPoint').value;
             window.open("gest_point.aspx?point="+numP);
     
        }
     
    </script>
    Et voici mon textbox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     
    <asp:TextBox ID="txt_numPoint" class = form-control runat="server" 
             Width ="125px" onClick="changePoint()"></asp:TextBox>
    Cependant j'ai des erreurs un peu partout aux mot "function" "''txt_numPoint''" "window" je ne m'y connais vraiment pas et me suis inspiré d'internet pour faire ça..
    pas besoins du runtat="server" pour la partie script. Je te conseil le framework jquery pour les manipulation javascript car il tiendra compte des différences entre les navigateurs.
    tu dois aussi mettre ton textbox en precisant le mode static pour l'id sinon il ne correponsdra pas.
    Pour rediriger c'est window.location

Discussions similaires

  1. Problème de variable : get()
    Par rhum187 dans le forum Interfaces Graphiques
    Réponses: 8
    Dernier message: 29/06/2011, 01h44
  2. problème pour récupérer les variables GEt d'un formulaire
    Par ouldfella dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 04/01/2010, 10h22
  3. <welcome-file-list> problème MAJ variable
    Par rock'roll dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 06/05/2007, 16h23
  4. Réponses: 4
    Dernier message: 02/03/2007, 22h33
  5. [servlet]problème de variable jamais nulle
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 18/03/2004, 09h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo