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

Struts 1 Java Discussion :

problème avec bean:define


Sujet :

Struts 1 Java

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 185
    Points : 109
    Points
    109
    Par défaut problème avec bean:define
    bonsoir,

    j'ai defini dans une jsp une variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <bean:define id="select" scope="request" value="valeur"></bean:define>
    je veux changer sa valeur à partir de javascript pour un traitement..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ctrlLDDegradation(element, valeur){
     
    	document.forms[0].elements[element].value=valeur;
    ...
    dans ma jsp j'appelle cette fonction en un onChange:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onChange="ctrlLDDegradationAutrePage2('select', 'Saisie')
    le problème c'est que j'ai en fin du compte le message d'erreur javascript document.forms[0].elements[element] est null ou n'est pas un objet.

    j'ai essayer de passer par un html:hidden mais sans succés, peut être il faut combiner les deux?

    si quelqu'un a une idée
    merci d'avance.

  2. #2
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Si tu es en J2EE 1.4 ou plus, tu dois pouvoir utiliser une EL comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onChange="ctrlLDDegradationAutrePage2('${select}', 'Saisie')
    Modératrice Java - Struts, Servlets/JSP, ...

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 185
    Points : 109
    Points
    109
    Par défaut
    merci pour ta réponse,

    ça ne marche pas, en fait la question est comment changer la valeur d'un bean:define à partir de javascript.
    pour faire simple, mon problème est que sur une page jsp j'ai un html:select , je veux afficher sur la même page des données suivant le choix de l'utilisateur dans la liste déroulante.

    merci par avance de vos suggestions.

  4. #4
    Expert éminent

    Femme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5 793
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 793
    Points : 7 778
    Points
    7 778
    Par défaut
    Pour éviter l'utilisation de fonction Javascript, tu peux soumettre le formulaire dès la sélection d'un élément dans la liste déroulante en utilisant l'attribut onchange du tag html:select :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <html:select property="itemSelected" onchange="document.nomDuFormBean.submit();">
    Modératrice Java - Struts, Servlets/JSP, ...

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    185
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 185
    Points : 109
    Points
    109
    Par défaut
    j'étais pas assez clair ,

    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
     
          <script type="text/javascript" language="javascript">
                function ctrlDegradadion( valeur) {
                    document.getElementById('select').value = valeur;              
                    document.forms[0].submit();
                }
     
            </script>
        </head>
        <body>
            <html:form action="/select">
                <html:hidden value="valeur" property="select" styleId="select"/>
                <table>
                    <tr>
                        <td>
                            <bean:message key="welcome.select.change" />                        
                        </td>
                        <td>
                            <html:select property="departments(dep1)" onchange="ctrlDegradadion('saisie')">
                                <html:option value="01" >Valeur</html:option>
                                <html:option value="02">Saisie</html:option>
                            </html:select>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            <bean:message key="welcome.select.value" />                        
                        </td>
                        <td>
                            <logic:equal name="${requestScope['select']}" value="valeur">
                                valeur
                            </logic:equal>
                            <logic:notEqual name="${requestScope['select']}" value="valeur">
                                saisie
                            </logic:notEqual>
                        </td>                    
                    </tr>    
                    <tr>
                        <td colspan="2" align="center"><html:submit/></td>
                    </tr>
                </table>            
            </html:form>
    je veux si l'utilisateur choisit Saisie dans la liste déroulante alors saisie sera affiché sinon valeur sera affiché.

    merci par avance.

Discussions similaires

  1. Problème avec bean
    Par damdams75 dans le forum JSF
    Réponses: 2
    Dernier message: 30/08/2008, 22h18
  2. problème de <bean:define>
    Par clairette dans le forum Struts 1
    Réponses: 2
    Dernier message: 25/07/2007, 17h04
  3. problème avec bean user
    Par moumen dans le forum Struts 1
    Réponses: 1
    Dernier message: 17/05/2007, 11h16
  4. problème avec bean:define
    Par sissi25 dans le forum Struts 1
    Réponses: 4
    Dernier message: 10/01/2007, 10h23
  5. [Swing] Problème avec un bean et un arraylist
    Par kikoufr dans le forum AWT/Swing
    Réponses: 16
    Dernier message: 30/09/2004, 09h08

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