# oncomplete bei Richfaces



## nocturn (19. Mai 2009)

Hi,
ich habe ein Skript das nicht ausgeführt wird:
[XML]<h:selectOneListbox>
<a4j:support event="onchange" oncomplete="if(value!=0 && value==1)Effect.BlindDown('autox');" actionListener="#{xxx}" />
<f:selectItem itemValue="1" itemLabel="xxx" />
</h:selectOneListbox>[/XML]

Mozilla sagt mir der empfangene quellcode = 
"...oncomplete="if(true &amp;&amp; value==1)Effect.BlindDown..."

Geändert


----------



## maki (19. Mai 2009)

Das true kannst du dir ja sparen, und damit das && auch.

Ansonsten empfiehlt es sich solche Dinge in eine JS Methode auszulagern und diese in oncomplete nur aufzurufen.


----------



## Luu (19. Mai 2009)

Vergleich 
<code>value=1</code> is fehlerhaft, Script wird (bzw würde) aufgerufen wenn der ActionListener durch ist..
Kannst ja ma ohne den Vergleich testen


----------



## nocturn (19. Mai 2009)

Ich habe den origialpost eben korrigiert.

Fakt ist weiterhin das & in &amp; umgewandelt wird - Scheint aber trotzdem zu funktionieren. 

Ich habe das Problem gelöst indem ich  "this.value" anstatt  "value"  genommen habe.

Also:
[XML]<h:selectOneListbox>
<a4j:support event="onchange" oncomplete="if(this.value!=0 && this.value==1)Effect.BlindDown('autox');" actionListener="#{xxx}" />
<f:selectItem itemValue="1" itemLabel="xxx" />
</h:selectOneListbox>[/XML] funktioniert!


----------

