Estou desenvolvendo uma aplicação em Java, e gostaria de fazer o seguinte:
O formulário cadastro de empresa possui campos que são obrigatórios o preenchimento, e outros de “endereço” que não são, então gostaria de colocar um button “Endereço” que quando o usuário clicar neste button, ele mostre os outros campos para o preenchimento.
Algo parecido com a tag em anexo, porém não há validação de modelo = ‘A1’, preciso que aparece os campos simplesmente clicando em um button.
<div class="form-group">
<h:outputLabel value="Modelo : * "
for="modelo"
styleClass="control-label col-sm-4"/>
<div class="col-sm-6">
<h:selectOneMenu value="#{certificadoController.certificado.modelo}">
<f:selectItem itemLabel="---" itemValue="---"/>
<f:selectItem itemLabel="A1" itemValue="A1"/>
<f:selectItem itemLabel="A3" itemValue="A3"/>
<f:ajax render="@form" />
</h:selectOneMenu>
</div>
</div>
<h:panelGroup rendered="#{certificadoController.certificado.modelo == 'A1'}">
<div class="form-group">
<h:outputLabel value="Backup A1 :"
for="upload"
styleClass="control-label col-sm-4"/>
<div class="col-sm-6">
<p:fileUpload label="Backup"
id="upload"
fileUploadListener="#{certificadoController.certificado.uploadA1()}"
mode="simple" skinSimple="true"
allowTypes="/(\.|\/)(pfx)$/"
invalidFileMessage="São permitidas somente arquivos do tipo (.pfx)"
sizeLimit="30720"
invalidSizeMessage="O tamanho máximo permitido é de 30KB."
fileLimit="1"
fileLimitMessage="Só é possível escolher 1 arquivo por vez."
auto="true"
onstart="console.log('Iniciando envio de arquivo')"
onerror="console.log('Erro na requisição de envio')"
oncomplete="console.log('Envio concluído')"
uploadLabel="Enviar" cancelLabel="Cancelar"/>
</div>
</div>
</h:panelGroup>
Como poderia fazer algo parecido aqui ?
<div class="form-group">
<h:outputLabel value="vis_end"
for="end"
styleClass="control-label col-sm-4"/>
<button type="button" class="btn btn-warning">Endereço
</button>
</div>
<h:panelGroup>
<div class="panel panel-info">
<div class="panel-heading">
<h3 class="panel-title">Endereço (Não Obrigatório)</h3>
</div>
<div class="panel-body">
<div class="form-group">
<h:outputLabel value="CEP:"
for="cep"
styleClass="control-label col-sm-4"/>
<div class="col-sm-2">
<p:inputMask id="cep"
style="width: 100px;"
mask="99.999-999"
value="#{empresaController.empresa.cep}"
title="CEP"
styleClass="form-control"/>
</div>
</div>
<div class="form-group">
<h:outputLabel value="Endereço:"
for="endereco"
styleClass="control-label col-sm-4"/>
<div class="col-sm-2">
<h:inputText id="endereco"
style="width: 350px;"
value="#{empresaController.empresa.endereco}"
title="Endereço"
styleClass="form-control"/>
</div>
</div>
</h:panelGroup>