Tenho um input do tipo radio (CPF ou CNPJ) e quando o usuário selecionar a opção CPF o label do campo tem que aparecer “Nome” e no caso de ser CNPJ tem que aparecer “Razão Social”, mas nada acontece… segue o código para análise:
HTML
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Cadastro de Pessoas</title>
<link href="css/geral.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="js/geral.js"></script>
</head>
<body bgcolor="#E8E8E8">
<form name="pessoa">
<input type="radio" name="pf_pj" id="cpf" value="CPF" onClick="trocaPfPj();">
<label for="cpf">CPF</label>
<input type="radio" name="pf_pj" id="cnpj" value="CNPJ" onClick="trocaPfPj();">
<label for="cnpj">CNPJ</label>
<input type="text" size="15">
<br><br>
<label id="teste" for="nomeRazaoSocial"></label>
<input type="text" id="nomeRazaoSocial" size="40">
</form>
</body>
</html>
Javascript
function trocaPfPj(){
var i
for (i=0;i<document.pessoa.pf_pj.length;i++){
if (document.pessoa.pf_pj[i].checked)
break;
}
if(document.pessoa.pf_pj[i].value=="CPF"){
document.getElementById("teste").InnerHTML = "Nome";
} else if(document.pessoa.pf_pj[i].value=="CNPJ"){
document.getElementById("teste").InnerHTML = "Razão Social";
}
}