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

JSF Java Discussion :

h:selectBooleanCheckbox et reRender


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    sup
    sup est déconnecté
    Membre confirmé Avatar de sup
    Profil pro
    Inscrit en
    Août 2004
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 70
    Par défaut h:selectBooleanCheckbox et reRender
    Salut,
    j'ai une page JSF qui fonctionne très bien sous Firefox et quand je teste sous IE 7 ben la ca marche plus.... (

    Il s'agit d'une page de recap et de selection du moyen de paiement, j'ai donc un selectBooleanCheckbox pour le fameux boutton "J'accepte les conditions generales de vente"

    Uen fois cliqué j'affiche les moyens de paiements...
    Firefox ne pose pas de probleme, sous IE des que je coche le a4j:outputPanel dans lequel est encapsulé ce selectBooleanCheckbox disparait et les autres a4j:outputPanel qui devraient s'afficher ne s'affiche pas.

    Voici mon code

    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
     
    <a4j:outputPanel id="panelGlobal" styleClass="price" layout="block"
    			ajaxRendered="true">
    			<h:outputText
    				value="#{userBean.bundle['priv/choosePayment']['i_agree']}"
    				style="margin-right: 5px;" />
    				<a4j:commandLink
    				value="#{userBean.bundle['priv/choosePayment']['with_terms_and_conditions']} "
    				style="margin-right: 5px;"
    				onclick="OpenIt('#{facesContext.externalContext.requestContextPath}/site/pub/static/general-conditions.jsf',1,520,600,'no','no'); return false;" />
     
    			<h:selectBooleanCheckbox valueChangeListener="#{privChoosePaymentGUI.processAcceptTermsAndConditionsValueChange}"
    			immediate="true"
    				value="#{privChoosePaymentGUI.acceptTermsAndConditions}">
    				<a4j:support event="onclick" limitToList="true" ajaxSingle="true" reRender="panelGlobal,panelPayment" />
    			</h:selectBooleanCheckbox>			
     
     
    			<a4j:outputPanel id="panelMustAgree" 
    				rendered="#{!privChoosePaymentGUI.acceptTermsAndConditions}">
    				<h:outputText
    					value="#{userBean.bundle['priv/choosePayment']['agree_to_display_payment']}" />
    			</a4j:outputPanel>
     
    			<a4j:outputPanel id="panelPayment"
    				rendered="#{privChoosePaymentGUI.acceptTermsAndConditions}">
     
    				<!-- Credit du compte  -->
    				<a4j:outputPanel
    					rendered="#{privChoosePaymentGUI.usePayment['credit_account']}">
    					<div><h:outputText
    						value="#{userBean.bundle['priv/choosePayment']['credit_account']}" />
    					<h:commandButton image=""
    						actionListener="#{privChoosePaymentGUI.processOrderCreditAccount}"
    						action="#{GUIManager.getNextView}" /></div>
    				</a4j:outputPanel>
    Qun je click, le boolean acceptTermsAndConditions passe à true, donc les outputPanel plus bas doivent s'afficher, c'est OK pour Firefox mai pas pour IE qui non seulement n'affcieh pa les moyens de paiements mai fait egalement disparaitre le checkBox sur lequel j'ai cliqué.

    J'y comrpend rien...

    Une idée?

  2. #2
    sup
    sup est déconnecté
    Membre confirmé Avatar de sup
    Profil pro
    Inscrit en
    Août 2004
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 70
    Par défaut
    SIPS génère un form (de meme pour paypal), c'est ce qui cause probleme pour IE.

    Depuis quand un form dans un form pose probleme?

  3. #3
    Expert éminent
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Par défaut
    probablement depuis que la balise form ne fait pas partie des balises autorisées au sein d'une balise form.... Quand tu clique sur un form encapsulé dans un autre form, le navigateur, d'après toit, il est censé soumettre *quoi*? Le form intérieur? Ca pourrait etre logique, l'ensemble du form englobant, ca peut aussi etre logique si on considère que seul le premier form détermine le lieu d'envoi? Et que fait si on ouvre 3 form mais qu'on en ferme qu'un? Dans certains cas, les navigateurs, quand ils trouveront un <form> sans voir d'abord le </form> en conclueront qu'on a oublié de faire le </form> et créeront un autre form séparé , d'autre feront autrement, y a pas de règle....

    Tu peux peut etre virer ton chose qui génère un form, en dehors du form jsf, y a rien qui oblige à mettre le output jsf dans des form, juste les input.

Discussions similaires

  1. problème rerender selectbooleancheckbox
    Par trin86 dans le forum JSF
    Réponses: 11
    Dernier message: 15/03/2010, 14h45
  2. selectBooleanCheckbox déjà cochée
    Par the_ugly dans le forum JSF
    Réponses: 1
    Dernier message: 11/12/2006, 19h23
  3. Réponses: 2
    Dernier message: 18/11/2006, 15h06
  4. je rerends à zéro
    Par pat1545 dans le forum Access
    Réponses: 4
    Dernier message: 11/08/2006, 19h53
  5. JSF Datatable et selectBooleanCheckbox
    Par faya972 dans le forum JSF
    Réponses: 4
    Dernier message: 03/04/2006, 22h24

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