2012-04-20 4 views
1

Это, вероятно, очень просто я пытаюсь добавить проверку, основанную на другом поле В формуле языка: @If (Desinfect_1 = «» & Desinfect = «Дезинфекция де Chambre»; @Failure ("Veuillez cocher départ НУ дамба "); @ Success)XPages проверка

в XPages Я попытался с выражением проверки:

<xp:inputText value="#{document1.chambre}" id="chambre1"> 
<xp:this.rendered><![CDATA[#{javascript:getComponent ("Desinfect1").getValue() == "Désinfection de chambre"}]]></xp:this.rendered> 
<xp:this.validators> 
<xp:validateExpression 
message="err"> 
<xp:this.expression><![CDATA[#{javascript:if (GetComponent ("Desinfect1").getValue() == "Désinfection de chambre" & GetComponent ("Chambre1").getValue() == ""){ 
return false; 
} 
else { 
return true; 
}}]]></xp:this.expression> 
</xp:validateExpression> 
</xp:this.validators> 
</xp:inputText> 
+0

Извините, но в чем проблема/вопрос? –

+1

BTW: SSJS - это сенсибилизация. GetComponent не будет работать. Вместо этого используйте getComponent ;-) –

+0

Проблема в том, что проверка не работает. Я попробую getComponent. – user1339222

ответ

0

Попробуйте добавить некоторые распечатки, чтобы увидеть вы получаете правильные значения для полей

+0

попробует - спасибо – user1339222

2

Когда вы делаете логический оператор для И в JavaScript вы должны использовать & &

<xp:this.validators> 
    <xp:validateExpression message="err"> 
     <xp:this.expression> 
      <![CDATA[#{javascript: if (getComponent("Desinfect1").getValue() == "Désinfection de chambre" && getComponent("Chambre1").getValue() == ""){ return false; } else { return true; }}]]> 
     </xp:this.expression> 
    </xp:validateExpression> 
</xp:this.validators> 
Смежные вопросы