Условно отобразить модальную панель richfaces - PullRequest
5 голосов
/ 30 апреля 2010

Довольно просто:

    <a4j:commandButton id="bob"
        action="#{MyBacking.doAction}"
        image="/img/btn.png"
        reRender="stuff"
                oncomplete="#{not empty MyBacking.myCondition ? #{rich:component('myModelPanel')}.show()" : <do nothing>}"
        ajaxSingle="true">
    </a4j:commandButton>

Это явно недействительный EL. Какой самый краткий способ, которым я условно показываю myModelPanel таким образом?

Спасибо, IA

Ответы [ 5 ]

1 голос
/ 21 июля 2010

Вы можете использовать это:

<a4j:commandButton data="#{ordre.render}"
                   oncomplete=" if (data == true) { 
                                   #{rich:component('popup')}.show() 
                                } else {
                                   alert('error'); 
                                }" />
1 голос
/ 08 мая 2010

Попробуйте вызвать пустой метод JS

0 голосов
/ 06 июня 2013
oncomplete="if (#{ MyBacking.myCondition}) {
#{
rich:component('myModelPanel'
}.show()
}"
0 голосов
/ 09 мая 2013

Так как условие доступно только при поддержке, вы должны использовать это:

<a4j:commandButton id="bob"
        action="#{MyBacking.doAction}"
        image="/img/btn.png"
        reRender="stuff"
                oncomplete="if (#{not empty MyBacking.myCondition} == true) {
                               #{rich:component('myModelPanel')}.show()
                             }"
        ajaxSingle="true">
</a4j:commandButton>
0 голосов
/ 20 августа 2010

используйте это:

                    <a4j:commandButton value="verify"
                                       oncomplete="#{rich:component('popup')}.show()" >
                        <a4j:support event="onclick"
                                     onsubmit="if (!verifInputs()){return false;}"/>
                    </a4j:commandButton>
...