Pessoal, eu achei essa solução com javaScript:
<script type="text/javascript">
function valor(qual) {
if(qual=="cpf") {
document.form.cpf.style.display="block";
document.form.cnpj.style.display="none";
}
if(qual=="cnpj") {
document.form.cpf.style.display="none";
document.form.cnpj.style.display="block";
}
}
</script>
e no HTML ficaria Assim:
<form name="form">
<input type="radio" name="qual" value="cpf" onclick="valor('cpf')"> CPF
<input type="radio" name="qual" value="cnpj" onclick="valor('cnpj')"> CNPJ
<input type="text" name="cpf" value="CPF AQUI" style="display:none;">
<input type="text" name="cnpj" value="CNPJ AQUI" style="display:none;">
</form>
mas a briga é: onde eu colocaria esse form essa opção ja que quando se cria o crud no controller, como eu colocaria esse formulario??
Olá, Ericke.
Amigo, não entendi sua dúvida, porém uma observação: Há uma falha nessa sua solução, pois se a pessoa preencher o CPF e depois clicar em CNPJ a tela muda, mas o valor do campo oculto ainda será enviado ao controller. Deu pra perceber que você quer que só seja enviado um OU outro. Portanto tua função javascript deve, além de ocultar, limpar o valor do campo oculto.
Todavia, se eu fosse você não usaria essa abordagem. Deixaria os 2 campos na tela (CPF e CNPJ) e, no momento da submissão, validaria se apenas um ou outro está preenchido. E já em alghum lugar teria isso avisado ao usuário. É menos trabalhoso e com bem menos chances de dar "zebra".
Porque não usa apenas uma propriedade e ao gravar formata conforme a seleção ?
Acho que sairia mais "barato" Ericke, que acha ?
José yoshiriro, sua solução ficaria mais fácil mesmo, só que do seu jeito ia mudar a identidade visual que foi definida com o cliente.
Pedro Henrique, como assim usar uma propriedade?
E pessoal, da pra entender o que eu quero fazer num é??? e essa solução daria pra ser feita em ajax?? Se siim, poderiam me dar um exemplo?
Obg.
Atenciosamente,
Ericke Accyole