Campo de formulário "showon" com vários campos

10

Eu tenho 3 campos definidos no meu arquivo XML da seguinte forma:

<field name="field1" type="radio" label="Field 1" class="btn-group" default="1">
    <option value="1">JYES</option>
    <option value="0">JNO</option>
</field>

<field name="field2" type="radio" label="Field 2" class="btn-group" default="1">
    <option value="1">JYES</option>
    <option value="0">JNO</option>
</field>

<field name="field3" type="radio" label="Field 3" class="btn-group" default="1">
    <option value="1">JYES</option>
    <option value="0">JNO</option>
</field>

Agora, o que eu gostaria de fazer é mostrar apenas field3 se field1 e field2 estiver definido como 1.

Lodder
fonte

Respostas:

15

Você pode encadear os valores de atributo de showon, usando [AND], da seguinte maneira:

showon="field1:1[AND]field2:1"

Também é permitido adicionar mais campos à cadeia.

Em uma nota lateral, você também pode usar uma [OR]cláusula na cadeia, adicionando mais complexidade, por exemplo:

showon="field1:1[AND]field2:1[OR]fieldX:1"

Atualização para o Joomla 3.7:

A partir do Joomla 3.7, você poderá usar o !operador (diferente de):

showon="field1!:1"

Isso significa que, se field1não for igual a 1

Lodder
fonte
Existe uma opção diferente para showon?
CoalaWeb
@CoalaWeb - Isso é o que já está fazendo. field1:1significa #field1 == 1
Lodder
Estou procurando uma opção! = Para listas de seleção grandes / dinâmicas que possuem apenas uma opção que oculta outro campo de formulário em vez de uma lista grande separada por vírgula. Da minha pesquisa, não parece que isso exista. Eu poderia analisar uma solicitação de recebimento, Cheers.
CoalaWeb
você pode usar !emptyou !:*?
Eoin
11
Aparentemente, você pode usar. showon="foo!:"Ainda estou para testar. Veja aqui: joomla.stackexchange.com/questions/21022/form-field-showonempty
Eoin