Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rogarfil

Função incrementar com contador

Recommended Posts

Prezados Colegas,

 

Tenho o seguinte código HTML e respectivas funções, trata-se do seguinte se o cliente tiver dependentes ele clica no acorddion para abrir a opção de cadastro do dependente, se existir mais que um ele acresce quantos forem necessários.

O que não consigo desenvolver é uma função que possa dar a possibilidade de comparar a idade dos dependentes que são acrescidos, pois até o procedimento do acorddion e acrescer o primeiro tudo corre bem.

Acredito que o título é justamente o que preciso, pois se conseguir colocar um contador no id="nasc_dependente", posso resolver este problema, o máximo de dependentes será de 10. (Sei que se o campo fosse hidden, bastaria um contador com laço FOR).

Segue abaixo o HTML e FUNCTION:

 

<div class="exemplo">
<h3 class="accordion">Clique Aqui! Para cadastrar seus Dependentes</h3>
<div class="accordion">
<div id="origem">
<fieldset class="grupo">
<div class="campo">
<label for="nome_dependente">Nome do Dependente</label>
<input type="text" id="nome_dependente" name="nm_nome_dependente[]" style="width: 30em" value="" />
</div>
<div class="campo">
<label for="parentesco">Grau de Parentesco</label>
<select name="TB_GrauParentesco_pk_parentesco[]" id="parentesco">
<option>Selecione</option>
<?php
$consulta_grauparentesco2 = mysqli_query($dados, "SELECT pk_parentesco AS TB_GrauParentesco_pk_parentesco, tx_grau_parentesco FROM TB_GrauParentesco");
while ($parentesco2 = mysqli_fetch_array($consulta_grauparentesco2)) {
$vpk_parentesco2 = $parentesco2["TB_GrauParentesco_pk_parentesco"];
$vnm_parentesco2 = $parentesco2["tx_grau_parentesco"];
echo ("<option value='" . $vpk_parentesco2 . "'>" . $vnm_parentesco2 . "</option>");
}
?>
</select>
</div>
<div class="campo">
<label for="nasc_dependente">Data nascimento</label>
<input type="text" id="nasc_dependente" name="dt_nasc_dependente[]" onblur="validarIdadeDep(this), adiciona()" onkeypress="mascara(this, mdata)" style="width: 10em" placeholder="dd/mm/yyyy" maxlength="10" /> <span id="msg_data"></span>
</div>
<input type="hidden" id="usuario" name="TB_Usuario_pk_usuario_cpf[]" value="<?PHP echo $cpf_rec; ?>" />
<img src="../img/add.gif" style="cursor: pointer;" onclick="duplicarCampos();" />
<img src="../img/cross.gif" style="cursor: pointer;" onclick="removerCampos(this);" />
</fieldset>
</div>
</div>
</div>
<script language="Javascript">
function validarIdadeDep() {
dataNasc = document.getElementById("nasc_dependente").value;
var dataAtual = new Date();
var anoAtual = dataAtual.getFullYear();
var anoNascParts = dataNasc.split('/');
var diaNasc = anoNascParts[0];
var mesNasc = anoNascParts[1];
var anoNasc = anoNascParts[2];
var idade = anoAtual - anoNasc;
var mesAtual = dataAtual.getMonth() + 1;
//se mês atual for menor que o nascimento,não faz aniversario ainda.
if (mesAtual < mesNasc) {
idade--;
} else {
//se tiver no mes do nasc,verificar o dia
if (mesAtual <= mesNasc) {
if (dataAtual.getDay() < diaNasc) {
//se a data atual for menor que o dia de nascimento,quer dizer que ele ainda não fez aniversario
idade--;
}
}
}
// se ativar o return ele mata o alert!
//return idade;
if (idade >= 70) {
document.getElementById('nasc_dependente').value = ''; //limpa o campo
document.getElementById('msg_data').innerHTML = "<p class='avm'>A idade limite é de 70 anos!</p>"
document.getElementById('nasc_dependente').focus();
return false;
} else {
document.getElementById('msg_data').innerHTML = "<p class='avd'>Ok!</p>"
}
}
function duplicarCampos() {
var clone = document.getElementById('origem').cloneNode(true);
var destino = document.getElementById('destino');
destino.appendChild(clone);
var camposClonados = clone.getElementsByTagName('input');
for (i = 0; i < camposClonados.length; i++) {
camposClonados.value = '';
}
}
function removerCampos(id) {
var node1 = document.getElementById('destino');
node1.removeChild(node1.childNodes[0]);
}
</script>
Quem puder me ajudar, até mesmo indicando bons cursos de javascript, agradeço desde já.
Abs,

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.