Jump to content
Fórum Script Brasil
  • 0

Checbox!?


iel

Question

Galera! sera que alguém poderia me dar um luz...

tipo

eu tenho numa pagina Varios Checkbox

onde eu posso selecionar qts forem necessarios,

como que eu poderia fazer para quando clicar no botao ele aparecer apenas os checkbox que estao selecionados, e como eu poderia também limitar a quantidade de checkboxs selecionados

tipo se eu tenho 40 checkbox e euquero permitir apenas a selecao de 8 campos e ele manda uma mensagem avisando que passou do limite, depois de seleciondos eu clicar em enviar e ele me retornar uma pagina com os valores dos checks aparecendo

valeu pessoal!

Link to comment
Share on other sites

18 answers to this question

Recommended Posts

  • 0

Tipo na parte de selecionar apenas 8 de 40 faz assim:

function validacao(obj)

{

for(i=0;i<obj.length-1;i++)

{

if (obj.elements.cb >= 0)

{

selecionado=0;

de = i;

ate = eval(de) + eval(obj.elements.cb);

for (x=de ; x<=ate ; x++)

{

if(obj.elements[x].checked)

{

selecionado = 1;

}

}

if (selecionado != 1)

{

alert("SELECIONE UMA OPÇÃO - CHECKBOX\n" + obj.elements.msg);

obj.elements.focus();

return false;

}

}

}

}

Link to comment
Share on other sites

  • 0

Desculpa ae...apertei sem quere pra enviar enquanto estava escrevendo o codigo....na verdade é assim:

function validacao(obj){

for(i=0;i<obj.length-1;i++)

{

if (obj.elements.cb >= 0)

{

selecionado=0;

de = i;

ate = eval(de) + eval(obj.elements.cb);

for (x=de ; x<=ate ; x++)

{

if(obj.elements[x].checked)

{

selecionado = 1;

}

}

if (selecionado != 1)

{

alert("SELECIONE UMA OPÇÃO - CHECKBOX\n" + obj.elements.msg);

obj.elements.focus();

return false;

}

}

}

}

Link to comment
Share on other sites

  • 0

Cara...não to afim de me registrar...entaum vou tentar de novo :P :

no seu primeiro input type de checkbox se coloca dentro da tag o parametro

cb=39.....isso se forem 40 checkbox....ai se coloca na tag form:

onSubmit="return validacao(this)"....ai abaixo ta o script:

<script>

function validacao(obj){

for(i=0;i<obj.length-1;i++)

{

if (obj.elements.cb >= 0)

{

selecionado=0;

de = i;

ate = eval(de) + eval(obj.elements.cb);

for (x=de ; x<=ate ; x++)

{

if(obj.elements[x].checked)

{

selecionado++;

}

}

if (selecionado > 8)

{

alert("SELECIONE NO MAXIMO 8" );

obj.elements.focus();

return false;

}

}

}

}

</script>

Espero ter ajudado...e me desculpem a mensagem que enviei sem querer!!!

Link to comment
Share on other sites

  • 0

Ae Ivo! seguinte eu testei mas não dando certo! pois quando eu envio ele apaga todos os campos e não aparece nada, eu fiz um exemplo! da uma olhadinha se não for pedir muito!

<html>
<head>
<title>Teste</title>
<script>
function validacao(obj){ 
for(i=0;i<obj.length-1;i++)
{
if (obj.elements[i].cb >= 0) 
{
itens=0;
de = i;
ate = eval(de) + eval(obj.elements[i].cb);
for (x=de; x<=ate; x++)
{
if(obj.elements[x].checked)
{
itens++;
}
}
if (itens > 8)
{
alert("SELECIONE NO MAXIMO 8" );
obj.elements[i].focus();
return false;
}
}
}
} 
</script>

</head>

<body>
<form name="form1" method="post" action="">
  <table width="50%" border="1" cellspacing="0" cellpadding="0">
    <tr> 
      <td colspan="5">Escolha as op&ccedil;&otilde;es</td>
    </tr>
    <tr> 
      <td><input name="itens" type="checkbox" id="itens" value="item1" cb="19">
        Item1</td>
      <td><input name="itens" type="checkbox" id="itens" value="item2">
        Item2</td>
      <td><input name="itens3" type="checkbox" id="itens" value="item3">
        Item3</td>
      <td><input name="itens4" type="checkbox" id="itens" value="item4">
        Item4</td>
      <td><input name="itens5" type="checkbox" id="itens" value="item5">
        Item5</td>
    </tr>
    <tr> 
      <td><input name="itens6" type="checkbox" id="itens" value="item6">
        Item6</td>
      <td><input name="itens7" type="checkbox" id="itens" value="item7">
        Item7</td>
      <td><input name="itens8" type="checkbox" id="itens" value="item8">
        Item8</td>
      <td><input name="itens9" type="checkbox" id="itens" value="item9">
        Item9</td>
      <td><input name="itens10" type="checkbox" id="itens" value="item10">
        Item10</td>
    </tr>
    <tr> 
      <td><input name="itens11" type="checkbox" id="itens" value="item11">
        Item11</td>
      <td><input name="itens13" type="checkbox" id="itens" value="item12">
        Item12</td>
      <td><input name="itens15" type="checkbox" id="itens" value="item13">
        Item13</td>
      <td><input name="itens17" type="checkbox" id="itens" value="item14">
        Item14</td>
      <td><input name="itens19" type="checkbox" id="itens" value="item15">
        Item15</td>
    </tr>
    <tr> 
      <td><input name="itens12" type="checkbox" id="itens" value="item16">
        Item16</td>
      <td><input name="itens14" type="checkbox" id="itens" value="item17">
        Item17</td>
      <td><input name="itens16" type="checkbox" id="itens" value="item18">
        Item18</td>
      <td><input name="itens18" type="checkbox" id="itens" value="item19">
        Item19</td>
      <td><input name="itens20" type="checkbox" id="itens" value="item20">
        Item20</td>
    </tr>
  </table>
  <p>
    <input type="submit" name="Submit" value="Enviar" onSubmit="return validacao(this)">
  </p>
</form>
</body>
</html>

valeu!

Link to comment
Share on other sites

  • 0

E se o utilizador tiver javascript desligado ;)

//HTML
<input type="checkbox" name="opcoes[]" value="1" />
<input type="checkbox" name="opcoes[]" value="2" />
<input type="checkbox" name="opcoes[]" value="3" />
<input type="checkbox" name="opcoes[]" value="4" />


//PHP

$opcoes = $_POST['opcoes'];

if (count($opcoes) > 8)
{
    echo 'Yo ma men!!!!!! selecionaste mais de 8!!!!';
}

foreach ($opcoes as $opcao)
{
     //fazer qualquer coisa com $opcao
}

Link to comment
Share on other sites

  • 0

dá pra fazer em php sim, muito fácil

tipo no checkbox: <input type=checkbox name=opcoes[]>

ai tu envia as informações para um outra página de validação(valida.php por exemplo), pode ate mesmo ser a mesma página, você usa $PHP_SELF.

por exemplo, você tem 5 checkbox:

<input type=checkbox name=opcoes[] value=a>a

<input type=checkbox name=opcoes[] value=b>b

<input type=checkbox name=opcoes[] value=c>c

<input type=checkbox name=opcoes[] value=d>d

<input type=checkbox name=opcoes[] value=e>e

ai tu marca 'a', 'd','e'

você marcou três checkbox

tipo que a variavel $opcoes[] fica assim na pagina de validamento(valida.php):

$opcoes[1]=="a"; //== significa É IGUAL, sei que você sabe, só pra lembrar

$opcoes[2]=="d";

$opcoes[3]=="e";

<?

//testa se tem menos que 8 opçoes, serve pra pagina de validação

if(cont($opcoes[])<=8)

{echo "tem menos que 8 opções marcadas";}

else

{ echo "mais que 8 opções"; break;}

?>

Muito fácil né, qualquer coisa se você não intender me fala que eu faço aqui rapidinho pra você e te mando no teu e-mail.

PHP É QUASE SEMPRE A MELHOR SOLUÇÃO, JS AS VEZES É MAIS UTIL, MAS NA MAIORIA DAS VEZES PHP É BEM MAIS SIMPLES PRA FAZER AS COISAS...

Link to comment
Share on other sites

  • 0
Guest Evandro Felipe

Sobre o php e js,

É, mas para fazer efeitos que o js faz o php é não é bom... otima linguagem de programacao, mas para feitos....

Um abraco,

Evandro Felipe.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...