Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá a todos.
Meu caso é o seguinte:
Possuo um form com radio-buttons e preciso garantir que pelo menos 1 dentre eles foi escolhido. Até aí tudo bem, através do javascript faço a verificação:
var vaga_escolhida = false;
for(var i = 0; i < formulario.vaga.length; i++){
if(formulario.vaga[i].checked){
vaga_escolhida = true;
}
}
Onde 'formulario.vaga' é a referência dos meus radio-buttons.
A quantidade de botões que aparecerão no form é aleatória (gerado via PHP) podendo ter de 1 a n.
E quando eu tenho somente 1 radio-button, o tipo de objeto aparentemente é HTMLInputElement e mais de 1 é Nodelist.
A dúvida:
Como identificar o tipo de objeto que o 'vaga' será? Ou maneira mais eficiente de validar isso via javascript.
Desde já obrigado.
um if normal, se > 1 nodelist
Obrigado Daniel.
Realmente desta forma resolvi o problema, utilizando-me do seu código.
Criei uma função separada, para que eu possa utilizar em outras validações em qq outra página.
Obrigado.
function valida_inputs(tipoCampo,idCampo){
var inputs = document.getElementsByTagName('input');
var escolhidos = new Array();
var contador = 0; //Atribuir os inputs escolhidos às primeiras posições do array escolhido (evita espaços em branco)
for(var i = 0; i < inputs.length;i++){
if(inputs[i].type == tipoCampo && inputs[i].id == idCampo){
escolhidos[contador] = inputs[i];
contador++;
}
}
var marcado = false;
for(var j = 0; j < escolhidos.length; j++){
if(escolhidos[j].checked == true){
marcado = true;
}
}
return marcado;
}
Peguei esse codigo aqui, veja se serve.