Ir para conteúdo

POWERED BY:

Arquivado

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

Faian

checkbox dinamico

Recommended Posts

bom dia pessoal tudo bom? é o seguinte estou tentando dar uma mensagem ao usuario qdo ele clica no botao OK, verificando se todos os meus checkbox estao marcados ou nao o problema é que ele vem de uma consulta que eu faço usando o banco entao eu nao sei qtos vao aparecer por consulta pode aparecer 1 ou 10 por esse motivo por nao ser estatico e sim dinamica minha consulta eu nao consigo fazer essa verificação e outra coisa o checkbox nunca vai estar com valor null por que passo o id de cada registro tipo assim:

 

<input name="opcao[]" type="checkbox" value="<? echo "$id_correio_geral";?>">

 

já pesquisei aqui no forum mas nao consegui achar nada que resolva meu problema, todos os que achei eram para quantidade de checkbox já definido. Se alguem tiver alguma soluçao para o problema eu agradeço.

 

Outra coias eu tenho isso em mais um campo que vem da consulta dinamicamente tbem

<input type="text" name="valor[]" id="valor" class="intranet" size="5" maxlength="6">

só que aqui eu nao passo nenhum valor só gostaria de dar o submit depois de todos os campos preenchidos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que você nao procurou muito bem..

 

Eu mesmo já postei umas 3 vezes uma função para fazer essa verificação....

 

Vou quebrar seu galho e postar de novo ¬¬

 

function verifica()
{

var campos = document.getElementsByTagName("input");

for(i=0;i<campos.length;i++)
{
if(campos[i].getAttribute("type")=="checkbox")
{
if(campos[i].value=="")
{
alert("Por favor, marque todos os checkboxes!");
}
}
}
}

Abraços....

 

 

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que você nao procurou muito bem..

 

Eu mesmo já postei umas 3 vezes uma função para fazer essa verificação....

 

Vou quebrar seu galho e postar de novo ¬¬

 

function verifica()
{

var campos = document.getElementsByTagName("input");

for(i=0;i<campos.length;i++)
{
if(campos[i].getAttribute("type")=="checkbox")
{
if(campos[i].value=="")
{
alert("Por favor, marque todos os checkboxes!");
}
}
}
}

Abraços....

 

 

}

 

essa funçao que você me passou nao resolveu o problema, nao faz nada ou seja nao aprece nenhuma mensagem na tela.

tentei usar assim:

 

function verifica()

{

 

var cks = document.getElementsByName('opcao');

for (i = 0; i < cks.length; i++) {

if (cks.valeu == "") {

return true;

}

}

alert("É necessário selecionar um campo pelo menos!");

return false;

}

me aparece o alert, mas fica aparecendo mesmo se eu marcar todos o que tem de errado nessa função?

Compartilhar este post


Link para o post
Compartilhar em outros sites

talvez teu erro esteja aqui: if (cks.valeu == "") {

ok mas se o erro esta ai o que deve ser feito para solucionar o problema?? pq eu nao manjo muito de javascript

 

 

...

 

entao pessoal eu estava fazendo teste e consegui fazer funcionar mas o problema é que eu tenho tres campos para verificar ai fiz da seguinte maneira

<script>

function validaForm(){

 

var cks = document.getElementsByName('checkbox[]');

for (i = 0; i < cks.length; i++) {

if (cks.checked != false) {

return true;

}

}

alert("É necessário selecionar todos os Checkbox!");

return false;

 

 

var num = document.getElementsByName('nu[]');

for (i = 0; i < num.length; i++) {

if (num.value != false) {

return true;

}

}

alert("É necessário selecionar todos os Registros!");

return false;

 

 

var vlr = document.getElementsByName('valor[]');

for (i = 0; i < vlr.length; i++) {

if (vlr.value == ""){

alert("O campo Valor deve ser preenchido.");

vlr.focus();return false;

}}

}

 

</script>

 

<form name="form1" action="teste.php" method="POST" onSubmit="return validaForm()">

como disse funciona mas somente se eu usar um deles qdo coloco os 3 juntos só é executado o que estiver em primeiro os outros dois é como se nao existisse, alguem saberia me dizer o pq o que eu estou fazendo de errado?

se eu fizer uma funcao para cada e chamala em algum evento nos campos será que daria certo? mas qual evento poderia fazer isso pra mim? vou fazer alguns testes e ver oque consigo. desde já obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum.. bom..

programador sempre acha q erro em um lugar qd as vzs erro em otro.. olha bem a sintaxe:

if (cks.valeu == "") {

... valeu???? =D

-----

Ele não continua rverificando pq você retorna a função e qd você retorna algo você termina ela

algo q você pode fazer é um contador e ir incrementando a medida q você acha um erro ou não aí sim depois vccompara esse contador com o número de itens q você verificou e retorna a função

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.