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 :

calculer la somme de deux textbox C# csharp [Débutant]


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut calculer la somme de deux textbox C# csharp
    Bonjour,

    j'ai dans un formulaire avec 2 texbox :
    1er textbox, mNombre50donnerTextBox, c'est pour les nombres de billets à 5 $
    L'utilisateur arrive sur ce textbox, et remplit combien billet veut (exemple 5 billets)
    lorsqu'il quitte le 1er textbox pour remplir le reste du formulaire, je veux automatiquement ajouter le total dans un autre textbox, mTotal50donnerTextBox, (selon exemple (5x50=250) je veux afficher 250).
    Autrement dit, il faut calculer automatiquement le prix et s'afficher tout de suite dans un autre textbox

    Voila mon code dans aspx (Front end) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <asp:label id="billets50donner" runat="server">Nombre de billet(s) à 50 $ :</asp:label>
    <asp:textbox id="mNombre50donnerTextBox" runat="server" MaxLength="3" Width="35px"></asp:textbox>
    <asp:textbox id="mTotal50donnerTextBox" runat="server" MaxLength="6" ReadOnly="True"></asp:textbox
    dans mon cs (Codebehind)
    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
    private void SetPageState()
      {
    	if (mNombre50donnerTextBox != null)
                 {
                     int cNombre50donner;
                     cNombre50donner = int.Parse(mNombre50donnerTextBox.Text);
                     int nombreMultiplier;
                     nombreMultiplier = 50;
                     int calculerBillet;
                     calculerBillet = cNombre50donner * nombreMultiplier;
                     mTotal50donnerTextBox.Show(calculerBillet.ToString());
     
                 }
                 else
                 {
     
                 }
     
     
    	mFormulairePageState.mNombre50donner = mNombre50donnerTextBox.Text;
            mFormulairePageState.mTotal50donner = mTotal50donnerTextBox.Text;
     
        SavePageState();
     }
     
    // plus loin
     
    		public struct FormulairePageState
    		{		
     
     
    			public int SelectedIndex;
     
                		public string mNombre50donner;
                		public string mTotal50donner;
    		}
    Comment je peux définir mon "Show" ? Que je dois changer pour que mon code marche ?

  2. #2
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Bonsoir,

    Je te conseille d'utiliser l’évènement TextChanged de ta TextBox mNombre50donnerTextBox afin d'effectuer ton calcul et reporter le total dans ta 2ème TextBox.

  3. #3
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Ce que tu demandes ne se fait pas en ASP.Net, il faut le faire en Javascript dans ta page!

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Citation Envoyé par Jean-Michel Ormes Voir le message
    Bonsoir,

    Je te conseille d'utiliser l’évènement TextChanged[/URL] de ta TextBox mNombre50donnerTextBox afin d'effectuer ton calcul et reporter le total dans ta 2ème TextBox.
    Salut Jean-Michel,

    ce que je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <div class="conteneur_lbl">
            <div class="lbl">
              <asp:label id="billets50donner" runat="server">Nombre de billet(s) à donner à 50 $ :</asp:label>
            </div>
            <div class="nmbr_txtbox">
               <asp:textbox id="mNombre50donnerTextBox"  name="mNombre50donnerTextBox" TextChanged="mTotal50donnerTextBox_TextChanged"  runat="server" MaxLength="3" Width="35px"></asp:textbox>
            </div>
    		<div class="dollars_txtbx">
               somme partielle : <asp:textbox id="mTotal50donnerTextBox"  name="mTotal50donnerTextBox"
                    runat="server" MaxLength="6" ReadOnly="True"></asp:textbox>,00$ 
            </div>
          </div>
    ensuite
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    private void mTotal50donnerTextBox_TextChanged(object sender, TextChangedEventArgs args)  // ligne 138
            {
                mTotal50donnerTextBox.Text = mNombre50donnerTextBox.Text;
            }
    mais j'ai un message d'erreur :
    message erreur : CS0246: Le type ou le nom d'espace de noms 'TextChangedEventArgs' est introuvable (une directive using ou une référence d'assembly est-elle manquante ?)
    Fichier source: ........formulaire.aspx.cs Ligne: 138

    Alors il manque quelques choses ? Quelle directive "using" je dois utiliser ?

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Citation Envoyé par Nathanael Marchand Voir le message
    Ce que tu demandes ne se fait pas en ASP.Net, il faut le faire en Javascript dans ta page!
    mais si le JavaScript était désactivé par l'utilisateur ?

  6. #6
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Citation Envoyé par aspkiddy Voir le message
    mais si le JavaScript était désactivé par l'utilisateur ?
    Je suis au grand regret de te dire que ASP.Net, sans que tu le saches, bourre ta page de Javascript

    De toute facon, celui qui bloque les Javascript de nos jour, ne peut même pas se servir de Google

    Autant à une époque le Javascript c'était kikoulol avec une trainée sur la souris, des popups, des trucs qui clignotent et une barre d'état qui défilent, autant maintenant c'est indispensable. Quasi la moindre fonctionnalité, c'est de l'AJAX

  7. #7
    Membre Expert Avatar de Er3van
    Homme Profil pro
    Architecte Logiciel
    Inscrit en
    Avril 2008
    Messages
    1 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte Logiciel
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 430
    Par défaut
    +1

    Et c'est tellement "bien fait" que maintenant certains développeurs ignorent justement qu'ils utilisent du JavaScript, pourtant, ce qui se fait côté client sur un site web, donc sans rafraîchissement de la page, c'est à 90% du JavaScript (je laisse le reste pour Silverlight ou les applets Java...).

    Personnellement, développer du JavaScript c'est ma hantise, mais avec VS2010 et le framework 4, il y a pleins d'extendeurs de contrôles Javascript/AJAX qui font des fonctionnalités très intéressantes (genre Ajax Control Toolkit).

  8. #8
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 61
    Par défaut
    Salut, tu peux ajouter un petit script jquery :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript">        
            $(document).ready(function () {
                $("#<%=mNombre50donnerTextBox.ClientID %>").keyup(function () {
                    $("#<%=mTotal50donnerTextBox.ClientID %>").attr("value", $("#<%=mNombre50donnerTextBox.ClientID %>").attr("value") * 50);
                });
            });  
    </script>

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Bonjour Nathanael Marchand, Er3van et ilya-bhn,
    Salut,
    Vous m'en avez convaincu : je vais utiliser JavaScript puisqu'il n'y a pas de solutions... Et vous avez raison qu'il y a toujours de code JavaScript (en plusieurs dizaines de lignes au moins) dans aspx...


    ilya-bhn, merci pour ton code...
    Mais ça ne marche pas...
    la ligne suivante pose de problèmes : (message Erreurs : $ is not defined) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $(document).ready(function () {

    En outre "$" c'est quoi ? Dans PHP, on déclare les variables au moyen du signe dollars...
    ClientID ? C’est quoi ?

  10. #10
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Citation Envoyé par aspkiddy Voir le message
    Bonjour Nathanael Marchand, Er3van et ilya-bhn,
    Et moi ? J'ai pas droit à un bonjour ? J'suis puni ?

    Pour ton souci essaye de rajouter ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Je suis vraiment désolé Jean-Michel Ormes,
    tu n'as pas puni, mais j'avais Alzheimer pendant quelques heures...

    Alors, un grand merci pour ton aide et maintenant mon code marche grâce à vous...

    Alors grand merci pour vous tous....
    alors mon code dans head :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
     <script type="text/javascript">
         $(document).ready(function () {
             $("#<%=mNombre50donnerTextBox.ClientID %>").keyup(function () {
                 $("#<%=mTotal50donnerTextBox.ClientID %>").attr("value", $("#<%=mNombre50donnerTextBox.ClientID %>").attr("value") * 50);
             });
         });  
    </script>
    dans body :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     <asp:textbox id="mNombre50donnerTextBox"  name="mNombre50donnerTextBox" TextChanged="mTotal50donnerTextBox_TextChanged"  runat="server" MaxLength="3" Width="35px"></asp:textbox>
           <br>
               <asp:textbox id="mTotal50donnerTextBox"  name="mTotal50donnerTextBox"  runat="server" MaxLength="6" ReadOnly="True"></asp:textbox>,00$
    Merci et bonne journée

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Bonjour Nathanael Marchand, Er3van, ilya-bhn et Jean-Michel Ormes,

    Comment on- peut faire une addition ou soustraction avec cette fonction ?

    exemple :

    faire adition entre 'mNombre50TextBox' et 'mNombre100TextBox'
    ou bien
    faire soustraction entre 'mNombre2TextBox' et 'mNombre1TextBox'

  13. #13
    Rédacteur

    Avatar de Jean-Michel Ormes
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2007
    Messages
    1 838
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Services à domicile

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 838
    Par défaut
    Citation Envoyé par aspkiddy Voir le message
    Bonjour Nathanael Marchand, Er3van, ilya-bhn et Jean-Michel Ormes,

    Comment on- peut faire une addition ou soustraction avec cette fonction ?

    exemple :

    faire adition entre 'mNombre50TextBox' et 'mNombre100TextBox'
    ou bien
    faire soustraction entre 'mNombre2TextBox' et 'mNombre1TextBox'
    Salut,

    Il te suffit de remplacer * par un + ou un -. Exemple d'addition :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
     <script type="text/javascript">
         $(document).ready(function () {
             $("#<%=mNombre50donnerTextBox.ClientID %>").keyup(function () {
                 $("#<%=mTotaldonnerTextBox.ClientID %>").attr("value", $("#<%=mNombre50donnerTextBox.ClientID %>").attr("value") + $("#<%=mNombre100TextBox.ClientID %>").attr("value") );
             });
         });  
    </script>

  14. #14
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Bonjour Jean-Michel Ormes,

    Merci pour tes explications... Et si j'ai plusieurs textBox...

    Lorsque j'ai plusieurs textBox, il y a quelques choses bizarres dans ce cas-là

    donc je t'explique*:

    j'ai 4 lignes et chaque ligne contient de 2 textBox

    1re ligne*: Nombre de billets (s) à 50 $ [mNombre50TextBox] et sous-total [mTotal50TextBox]
    2e ligne*: Nombre de billet(s) à 100 $ [mNombre100TextBox] et sous total [mTotal100TextBox]
    3e ligne*: Nombre de billet(s) à 150 $ [mNombre150TextBox] et sous totaux [mTotal150TextBox]
    4e ligne*: total billet [mNombre_total_billetsTextBox] et Total [mTota_billetsTextBox]

    Avec le code suivant tout va bien*:
    je tape 5 dans 1er textBox de la 1re ligne et j'ai obtient 250$ sous total dans (1re ligne) et 250 $ Total (4e ligne) et 5 total billets dans [mNombre_total_billetsTextBox] à la 4e ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     $(document).ready(function () {
                      $("#<%=mNombre50TextBox.ClientID %>").keyup(function () {
                          $("#<%=mTotal50TextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value") * 50);
     
     
     
                          $("#<%=mNombre_total_billetsTextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value"));
     
     
     
     
                          $("#<%=mTota_billetsTextBox.ClientID %>").attr("value", $("#<%=mTotal50TextBox.ClientID %>").attr("value"));
             });
         });
    Par contre avec le code suivant ça change :
    je tape 5 dans 1er textBox de la 1re ligne :
    (1re ligne) : j'ai obtient 250$ sous total et
    (4e ligne) 5 total billets dans [mNombre_total_billetsTextBox] et 250 $ Total

    ensuite je tape 3 dans 1er textBox de la 2e ligne [mNombre100TextBox]
    (2 ligne) : j'ai obtient 300$ sous total (tout va bien jusqu'au là) et
    (4e ligne) 53 total billets dans [mNombre_total_billetsTextBox] et 250300 $ Total
    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
         $(document).ready(function () {
                      $("#<%=mNombre50TextBox.ClientID %>").keyup(function () {
                          $("#<%=mTotal50TextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value") * 50);
     
     
     
                          $("#<%=mNombre_total_billetsTextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value"));
     
     
     
     
                          $("#<%=mTota_billetsTextBox.ClientID %>").attr("value", $("#<%=mTotal50TextBox.ClientID %>").attr("value"));
             });
     
     
    	     $("#<%=mNombre100TextBox.ClientID %>").keyup(function () {
                 $("#<%=mTotal100TextBox.ClientID %>").attr("value", $("#<%=mNombre100TextBox.ClientID %>").attr("value") * 100);
     
     
     
                 $("#<%=mNombre_total_billetsTextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value") + $("#<%=mNombre100TextBox.ClientID %>").attr("value"));
                 $("#<%=mTota_billetsTextBox.ClientID %>").attr("value", $("#<%=mTotal50TextBox.ClientID %>").attr("value") + $("#<%=mTotal100TextBox.ClientID %>").attr("value"));
     
     
     
     
             });
         });
    Comment je peux obtenir 8 total billets (au lieu de 53 (cela veut dire 5+3)) et 550$ (au lieu de 250300 (donc 250+300)

  15. #15
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 61
    Par défaut
    Salut, essaye de convertir le contenu des textbox calculées en entier en ajoutant la fonction parseInt()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $("#<%=mNombre_total_billetsTextBox.ClientID %>").attr("value", parseInt($("#<%=mNombre50TextBox.ClientID %>").attr("value")) + parseInt($("#<%=mNombre100TextBox.ClientID %>").attr("value")));
    $("#<%=mTota_billetsTextBox.ClientID %>").attr("value", parseInt($("#<%=mTotal50TextBox.ClientID %>").attr("value")) + parseInt($("#<%=mTotal100TextBox.ClientID %>").attr("value")));

  16. #16
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Bonjour tout le monde,

    Super merci
    Ça marche, mais il y a une autre chose bizarre

    Mon curseur arrive par la touche 'tab' de mon clavier dans 1er textbox (mNombre50TextBox) et par exemple, je tape [2] dedans et j'obtiens [100] dans (mTotal50TextBox) et aussi dans (mTota_billetsTextBox) et j'obtiens aussi [2]
    dans (mNombre_total_billetsTextBox)
    Enuiste en appuyant sur la touche 'Tab' je passe au 2e textbox (mTotal50TextBox) et ensuite j'arrive au 3e textbox (mNombre100TextBox). Lorsque mon curseur est dedans, il ya [NaN] dans mon textBox (mNombre_total_billetsTextBox).

    Si je tape, par exemple [3] dans ce textBox (mNombre100TextBox) et cette fois-ci tout entre dans l'ordre :
    (mNombre_total_billetsTextBox) contient [5] et
    (mTota_billetsTextBox) contient [400]

    et si je ne tape rien dans ce textbox (mNombre100TextBox) alors :
    (mNombre_total_billetsTextBox) contient [NaN] et
    (mTota_billetsTextBox) contient [100]


    Par contre si j'utilise la souris pour déplacer entre les textBox au lieu d'utiliser la touche 'Tab' tout marche bien sans [NaN]

    J'ai regardé et je vois que NaN veut dire "(Not a Number) is a value of the numeric data type representing an undefined or unrepresentable value, especially in floating-point calculations."

    Alors comment je peux éviter cette histoire lorsque l'utilisateur sert la touche 'Tab'.


    Moi j'ai trouvé une astuce, mais ce n'est pas bon... c'est un peu comme un diachylon...



    Lorsque j'ajoute [ Text="0" ] dans mon textBox, Nan disparait...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <asp:textbox id="mNombre50TextBox" Text="0" runat="server" MaxLength="3" Width="35px"></asp:textbox>
    Merci encore

  17. #17
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2006
    Messages : 61
    Par défaut
    Bonjour, et bien c'est parce que la fonction keyup est invoqué lorsque tu tapes tabulation et que le textbox est encore vide, donc soit tu laisses ta solution (0 dans la textbox) ou bien tu peux ajouter un test avant d'affecter la valeur à la textbox total
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!isNaN($("#<%=mNombre100TextBox.ClientID %>").attr("value"))) {
    //ton traitement
    }

  18. #18
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut
    Merci ilya-bhn,

    Ça marche


    Bonne journée

  19. #19
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut les valeurs....
    Bonjour ilya-bhn, Jean-Michel Ormes, Er3van et Nathanael Marchand,

    J'ai un p'tit problème...

    Avec le code Ajax, les valeurs....
    Avec ce code je n'arrive pas récupérer la valeur du textBox dans un autre écran (je n'arrive pas afficher les valeurs dans un label "mPriceLabel" dans l'écran suivant)...

    Dans 1er écran, j'ai un textBox, mNombre50TextBox, l'utilisateur remplit le nombre de ticket qu'il veut dans cette textBox.On affiche (en calculant avec jQuery) la somme dans un autre textBox, mTotal50TextBox, et dans un autre textBox,mMontantTextBox, on met la totale du facture...

    dans mon aspx :

    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
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <script type="text/javascript">
            $(document).ready(function () {
     
                $("#<%=mNombre50TextBox.ClientID %>").keyup(function () {
                    $("#<%=mTotal50TextBox.ClientID %>").attr("value", $("#<%=mNombre50TextBox.ClientID %>").attr("value") * 50);
     
                    $("#<%=mMontantTextBox.ClientID %>").attr("value", $("#<%=mTotal50TextBox.ClientID %>").attr("value"));
                });
    			 $("#<%=mNombre100donnerTextBox.ClientID %>").keyup(function () {
                    $("#<%=mTotal100donnerTextBox.ClientID %>").attr("value", $("#<%=mNombre100donnerTextBox.ClientID %>").attr("value") * 100);
     
                    $("#<%=mMontantTextBox.ClientID %>").attr("value", parseInt($("#<%=mTotal50TextBox.ClientID %>").attr("value")) +  parseInt($("#<%=mTotal100donnerTextBox.ClientID %>").attr("value")));
     
     
     
                });
     
    		                               });  
        </script>
     
     
      <div class="conteneur_lbl">
                    <div class="lbl">
                        <asp:Label ID="billets50" runat="server">Nombre de billet(s) à 50 $ :</asp:Label>
                    </div>
                    <div class="nmbr_txtbox">
                        <asp:TextBox ID="mNombre50TextBox" Text="0" runat="server" MaxLength="3" Width="35px"></asp:TextBox>
                    </div>
                    <div class="dollars_txtbx">
                        somme partielle :
                        <asp:TextBox ID="mTotal50TextBox" runat="server" Text="0" MaxLength="6" ReadOnly="True"></asp:TextBox><span
                            class="pour_cent_dollars">,00$ </span>
                    </div>
                </div>
    <div class="conteneur_lbl">
                    <div class="lbl">
                        <asp:Label ID="billets100donner" runat="server">Nombre de billet(s) à donner à 100 $ :</asp:Label>
                    </div>
                    <div class="nmbr_txtbox">
                        <asp:TextBox ID="mNombre100donnerTextBox" Text="0" runat="server" MaxLength="3" Width="35px"></asp:TextBox>
                    </div>
                    <div class="dollars_txtbx">
                        somme partielle :
                        <asp:TextBox ID="mTotal100donnerTextBox" Text="0" runat="server" MaxLength="6" ReadOnly="True"></asp:TextBox><span
                            class="pour_cent_dollars">,00$ </span>
                    </div>
                </div>
     
     
     <div class="conteneur_lbl">
                    <div class="lbl">
                        <asp:Label ID="OfferLabel" runat="server">Montant total :</asp:Label>
                    </div>
                    <div class="txtbx">
                        <asp:TextBox ID="mMontantTextBox" runat="server" ReadOnly="True"></asp:TextBox>
                        ,00$
                        </div>
                </div>
    Ensuite (lorsque l'utilisateur clique sur un bouton), on sauvegarde les informations pour l'écran suivant :
    DANS MON CS :
    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
    private void SetPageState()
    		{
     
     
    mFormulairePageState.MontantContribution = mMontantTextBox.Text; 
     
    //...
     
    			SavePageState();
    		}
     
    			public struct FormulairePageState
    		{		
     
     
    			public int SelectedIndex;
    			//....
     
    			public string MontantContribution;
     
    						//....
     
    		}
    Dans 2e écran, je vais afficher la somme dans un "Label", mPriceLabel, :


    Voici le code dans cs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    		private void LoadLabels()
    		{
    			object FormulairePageState = Session["FormulairePage"];
     
    			// changement montant en ajoutant deux 00
    			cost = s.MontantContribution;
                double doubleVal = 0.0;
                if (Double.TryParse(cost, out doubleVal))
                {
                    newVal = (int)doubleVal * 100;
                    mPriceLabel.Text = newVal.ToString();   // on affiche 1000 J'ai besoin pour carte crédit
     
     
                }
    Mais dans mon "label" il n'y a rien, il est vide. Comemnt je peux afficher la somme dans ce 2e écran ?

    J'ai fait un test dans mon 1er écran : j'ai enlevé [ReadOnly="True"] dans mon textBox de "mMontantTextBox"... Ensuite, j'ai tapé directement les chiffres dans ce textBox, mMontantTextBox. Dans ce cas-là, ces valeurs sont affichées dans le label au 2e écran...

  20. #20
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    316
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2010
    Messages : 316
    Par défaut ReadOnly="True"
    Bonjour,

    Mon problème vient de l'attribut ReadOnly="True" de mon textBox...

    Lorsque je le supprime, tout va bien, je suis capable de récupérer les valeurs de ces textBox.

    Alors, vous pouvez me proposer quelques choses à la place de ReadOnly="True" qui fait la même chose

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [XL-2013] Calcule la somme entre deux dates en condition sur 6 mois
    Par undo74 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/07/2014, 16h30
  2. Réponses: 3
    Dernier message: 23/12/2013, 22h19
  3. Calculer 2 sommes affichés sur textbox ?
    Par enretard dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 11/04/2013, 11h40
  4. calculer la somme de deux variables
    Par Invité dans le forum iReport
    Réponses: 12
    Dernier message: 03/08/2007, 17h25

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