Ir para conteúdo

POWERED BY:

Arquivado

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

Wellington Guedes

Verificar se o Checkbox está marcado

Recommended Posts

Boa tarde,

 

Tenho uma função que me retorna os valores dos checkbox quando o mesmo está como checked.

 

Como posso fazer para que ele retorne os 2 checkbox,mesmo que 1 não esteja como checkded?

 

 

 

Preciso que ele retorna um array assim:

 

1 - false

2 - true

 

No caso, deixei desmarcado o 1 e marque o 2.

<script type="text/javascript">
    function envia() {
        var nome = new Array();
        $.each($("input[name='teste[]']:checked"), function() {
        nome.push($(this).val());
});
            $.ajax({
            url:'process.php',
            type:'POST',
            data: {nome:nome},
            success: function(res) {
                    alert(res);
}
});
    }
</script>
</head>
<body>


<input type="checkbox" name="teste" value="1" />
<input type="checkbox" name="teste" value="2" />

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

exemplo rapido:



<input type="checkbox" name="teste[]" value="1" />
<input type="checkbox" name="teste[]" value="2" checked="checked" />


<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
var nome = new Array();
$.each($("input[name='teste[]']"), function() {
	var ch = $(this).attr('checked')==='checked' ? true : false;
	nome.push( ch );
});
alert( nome );
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado pela dica William Bruno,

 

Mas uma dúvida:

 

Por padrão os 2 checkbox aparecem como não checados. No seu exemplo o 1 é sempre false e o 2 é sempre true.

Como posso deixar os valores de acordo com o que for escolhido?

 

 

vlw!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o meu exemplo é apenas para poder testar sem precisar de um click.

 

o codigo vai funcionar para o seu caso, só aplicar ai.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Realmente, agora entendi, estava usando o link ainda.

 

Só mais uma dúvida que não compreendi. Quando for enviar as informações, como vou referenciar o value [0]1 => true ,[1] 2=>false?

 

Pois no meu PHP eu recebo um Array, Faço um Foreach, e realizo os Inserts no banco.

 

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara, se vc precisa da chave tb, então vc tem q usar um objeto:

var nome = {};
$.each($("input[name='teste[]']"), function() {
	var ch = $(this).attr('checked')==='checked' ? true : false;
	nome[ $(this).val() ] = ch;
});
console.log( nome );

resultado:

Object { 1=false, 2=true }

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.