Ir para conteúdo

POWERED BY:

Arquivado

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

Vitor Bueno

Ao Marcar Uma Checkbox Desmarcar Outra!

Recommended Posts

Eu estou usando PHP,e Javascript e HTML, para tentar fazer uma função para duas CheckBox,

Exemplo no meu campo tem a opção Apto e Não Apto,

Quero que quando eu checar o Checkbox Apto, caso eu checar o Não Apto irá Deschecar o Apto,e Caso ou Checar o Apto Deschecar o Não Apto, ser possivel ter apenas uma das duas opções de Check, não quero que seja possivel as duas ficarem checadas, como posso fazer?

Muito Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos do princípio:

 

1º - Orientações para uma boa participação;

 

2º - Entenda a(s) linguagem(ns) que está trabalhando e o que você quer fazer. Você está complicando o que poderia muito bem ter feito de duas formas diferentes, que obteria o mesmo resultado:

 

- Substituir o input checkbox por um do tipo radio;

- Utilizar select ao invés de input.

 

O primeiro de longe é o mais recomendado. Entretanto, utilizar um select lhe daria o mesmo resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu tambem pensei em colocar radio, mas no caso, são essas duas checkbox, e são 3 tipos de relatorios, um aparece apenas o apto, outro apenas o não apto, e o terceiro que estou tentando aparece os dois, e não quero que seja possivel deixar os dois selecionados, quero deixar apenas um dos check checado, porque ele me vem de um relatorio, e são dentros de um while



e se fosse radio, teria nome e id diferentes, e mesmo assim teria como selecionar os dois, pelo fato de vim de um relatorio, dentro do whille, vem como id=checkapto<=$id_cliente> name=checkapto<=$id_cliente> e para os não aptos id=checknapto<=$id_cliente> name=checknapto<=$id_cliente>, e no radio seria tbm nomes diferentes, e seria possivel selecionar mais doque apenas um !

se alguem souber alguma função ou outra maneira que possa me ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

no caso não posso alterar para radio, pois vem de um relatorio, meu codigo esta exatamente assim!

<script type="text/javascript" src="js/menu.js"></script>

<script>
function marcardesmarcar(id){

check="check"+id;
checkna="checkna"+id;
teste= document.form.check.value;
alert("oi")

if (document.form.check.checked==true){alert("apto")
document.form.checkna.checked==false
}
else if (document.form.checkna.checked==true){alert("Não apto")
document.form.check.checked==false
}

}

</script>

<?

 

 

 

 

while($linha = mysql_fetch_array($rs)){
$contador+=1;

if($_GET["status"] == 1 || $_GET["status"] ==2 || $_GET["status"] ==3){?>
<td>
<input type="checkbox" id="check<?=$id_cliente?>" name="check<?=$id_cliente?>" style="width:30px" class="check" onclick="marcardesmarcar('<?=$id_cliente?>');" />
</td>
<?}
if($_GET["status"] ==3){?>
<td>
<input type="checkbox" id="checkna<?=$id_cliente?>" name="checkna<?=$id_cliente?>" style="width:30px" class="checkna" onclick="marcardesmarcar('<?=$id_cliente?>');"/>
</td>
<?}?>
<?
}
?>

Então, estou tentando arrumar essa função js acima, para que quando eu selecionar a CheckBox=Checkna ira tirar a Checkbox=Check e assim ao contrario também, eu nao posso usar radio, tenho q usar a checkbox, e preciso de alguma função que ira fazer isso por mim! tera que verificar quando uma checkbox for checada para deixar a outra dês-checada e assim ao contrario também , o caso apenas uma das duas check pode estar checada

Compartilhar este post


Link para o post
Compartilhar em outros sites

O PHP tá certo?

<?php
  if($_GET["status"] == 1 || $_GET["status"] ==2 || $_GET["status"] ==3){?>
   
     //codigo...
<?php}
  if($_GET["status"] ==3){?>

    //codigo...
<?php}?>

Voce verifica o numero "3" duas vezes.

 

 

está sim, porque o Apto, tem que aparacer em dois casos, e o Não Apto em Dois tambem, e tem 3 relatorios,Apto que ira me retornar apenas a opção NãoApto, o Relatorio Apto que ira me retornar apenas a opção Apto,e o relatorio Tempo Expirador, que ira me retornar as duas opções Apto e NãoApto, ou seja são 3 realtorio para duas opções, Relatorio 1 apenas opção 1, Relatorio 2 apenas opção 1, e Relatorio 3 opção 1 e 2, ja funciona esses check, so preciso mesmo da função para não conseguir selecionar os dois, apenas um deles pode estar selecionado para alterar relatorio!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei, mas vamos pensar... Se o $_GET['status'] == 3 ele vai selecionar os 2, para que voce decida isso antes de selecionar os 2 voce teria que fazer o mesmo if antes de tudo, para aparecer ai uma quadro ou algo do tipo que ele pudesse escolher uma das 2 opções. É isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sei, mas vamos pensar... Se o $_GET['status'] == 3 ele vai selecionar os 2, para que voce decida isso antes de selecionar os 2 voce teria que fazer o mesmo if antes de tudo, para aparecer ai uma quadro ou algo do tipo que ele pudesse escolher uma das 2 opções. É isso?

 

Assim dentro desses If's eu tenho duas CheckBox, Uma Check apto, e Uma Check Não Apto, Ja está tudo correto, única coisa que incomoda e o fato de eu conseguir selecionar as duas, queria colocar o button radio, mas não posso, tenho que usar essas checkbox, e assim no Relatorio 3 quando aparecer essas duas Check's, eu não quero conseguir selecionar as duas, Exemplo:

Irá aparecer as duas checkbox a Apto e Não Apto, eu quero checar a Apto, e caso eu cheque a Não Apto, a check Apto ira ser des-checada, ou seja não quero que seja possível selecionar duas checkbox, quero que caso uma ja esteja selecionada e eu selecione outra essa que ja estava selecionada antes seja desselecionada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma outra pergunta, os 2 checkbox aparecem ou quando voce clica só aparece 1.

assim são dois check. exemplo:

Uma Pergunta qualquer,

Sexo:

Masculino Feminino

eu não posso checar essas duas checkbox, eu tenho que checar so uma, mas ja consegui resolver estarei colocando o codigo aqui

 

 

Galera, Consegui Resolver,

 

 

Usei a Seguinte função Javascript:

 

function marcardesmarcar(check,id,check2){

d = document.form;

 

if (document.getElementById(check+id).checked==true){

document.getElementById(check2+id).checked=false;

}

 

}

 

 

E na chamada da função ficou assim:

 

<td>

<input type="checkbox" id="check<?=$id_cliente?>" name="check<?=$id_cliente?>" style="width:30px" onclick="marcardesmarcar('check','<?=$id_cliente?>','checkna');" />

</td>

 

<td>

<input type="checkbox" id="checkna<?=$id_cliente?>" name="checkna<?=$id_cliente?>" style="width:30px" onclick="marcardesmarcar('checkna','<?=$id_cliente?>','check');"/>

</td>

 

Obrigado Pela atenção pessoal!

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.