Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Primeiras postagens
Primeiras postagens
Tópico Autor
Mensagens: 4

Passar valor do radio button para variavel em javascript

25-03-2011 00:25

Estou desenvolvendo um site onde o cliente irá selecionar os ingredientes de um prato e em cada ingrediente utilizei um checkbox. O prato tem 2 tamanhos, caso o tamanho seja grande o cliente poderá selecionar todos os ingredientes (todos os checkbox) , ou caso o prato seja pequeno o cliente terá direito de selecionar apenas 6 ingredientes (6 checkbox).

Para selecionar o tamanho do prato eu utilizei 2 radio button, 1 - tamanho grande e 2 - tamanho pequeno , e para limitar os checkbox encontrei um script para limitar com o valor desejado. Gostaria de passar os valtores do radio button para o script que limita os checkbox, caso o cliente selecione 1 libera todos, caso o cliente selecione 2 libere apenas 6 checkbox. Tentei utilizar de várias formas, passando o valor do radio e mostrando um alerta , porém quando tento passar o valor para a variavel do script não acontece nada.

Obrigado,

<!-- Botoes que selecionam o tamanho do prato -->   <input name="tamanho" type="radio" id="tamanho1" value="1" checked="CHECKED"/> <input name="tamanho" type="radio" id="tamanho2" value="2" />     <!-- Script que limita os checkbox -->  <script type="text/javascript"> var checkCount=0 var maxChecks= 6        // número máximo de checkbox que será selecionado, onde quero passar o valor selecionado no radio button.   <!-- //initial checkCount of zero function setChecks(obj){ //increment/decrement checkCount if(obj.checked){ checkCount=checkCount+1 }else{ checkCount=checkCount-1 } //if they checked a 4th box, uncheck the box, then decrement checkcount and pop alert if (checkCount>maxChecks){ obj.checked=false checkCount=checkCount-1 alert('teste') } }   //--> </script>     <!-- Escolha dos ingredientes  -->        <table width="200" border="0" cellspacing="0" cellpadding="0">                  <input type="checkbox" name="ingredientes[]" value="Tomate"  id="check1" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Cebola"  id="check2" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Bacon"  id="check3" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Alho"  id="check4" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Champignon"  id="check5" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Pimenta"  id="check6" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Calabresa"  id="check7" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Tomate Seco"  id="check8" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Azeitona"  id="check9" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Milho"  id="check10" onclick="setChecks(this)"/>      <input type="checkbox" name="ingredientes[]" value="Presunto"  id="check11" onclick="setChecks(this)"/>

0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17583
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Passar valor do radio button para variavel em javascript

25-03-2011 07:03

Faz assim, define um campo input text, que vai receber o valor máximo de cada input radio marcado. E ao clicar no input radio, você passa o valor máximo para esse input text, dessa forma:

<input name="tamanho" type="radio" id="tamanho1" value="1" onclick="document.getElementById('tamanho').value='11'" /> Grande <input name="tamanho" type="radio" id="tamanho2" value="2" onclick="document.getElementById('tamanho').value='6'" /> Pequeno   <input type="text" id="tamanho" value="0">

No script, as variáveis que pegam os valores, você zera

var checkCount = 0; var maxChecks = 0;


Agora, troca esse if

if (checkCount>maxChecks){


por esse que vai pegar o máximo de checkbox marcado pelo input text

if (checkCount>document.getElementById('tamanho').value){

0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Bing [Bot]