Foros del Web » Programando para Internet » Javascript »

Checkbox ninguno

Estas en el tema de Checkbox ninguno en el foro de Javascript en Foros del Web. Hola un saludo a todos, tengo un formulario el cual consta de una serie de preguntas y respuestas en la cual las respuestas son puros ...
  #1 (permalink)  
Antiguo 30/06/2011, 16:17
 
Fecha de Ingreso: junio-2006
Mensajes: 5
Antigüedad: 18 años, 6 meses
Puntos: 0
Exclamación Checkbox ninguno

Hola un saludo a todos, tengo un formulario el cual consta de una serie de preguntas y respuestas en la cual las respuestas son puros checkbox, sin embargo una de las respuestas es la opcion ninguno lo q deberia de hacer es que al seleccionar dicha opcion se deben desmarcar todos los checkbox que han sido seleccionados dejando marcado unicamente el de ninguno mi pregunta es como podria hacer con jquery o con javascript

Saludos
  #2 (permalink)  
Antiguo 30/06/2011, 16:36
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 8 meses
Puntos: 344
Respuesta: Checkbox ninguno

Te dejo un ejemplo muy sencillo de como hacerlo. Si tienes alguna duda pregunta:

http://jsfiddle.net/alexg88/S2ySG/embedded/result/
  #3 (permalink)  
Antiguo 30/06/2011, 17:31
 
Fecha de Ingreso: junio-2006
Mensajes: 5
Antigüedad: 18 años, 6 meses
Puntos: 0
Exclamación Respuesta: Checkbox ninguno

Hola una pregunta como puedo saber con que version de jquery funciona ya que lo probe pero no jala. Dejo el codigo con el que lo cheque.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script language="javascript" src="../js/jquery.js"></script>
<script language="javascript" type="text/javascript">
$('#ninguno').change(function(){

$('.otros').each(function(i,e){
e.checked = false;
});
});

$('.otros').change(function(){

ninguno= $('#ninguno');
ninguno[0].checked = false;

});
</script>
</head>

<body>
<input id="ninguno" type="checkbox" value="Ninguno">Ninguno</input>

<input class="otros" type="checkbox" value="1">1</input>
<input class="otros" type="checkbox" value="2">2</input>
</body>
</html>
  #4 (permalink)  
Antiguo 01/07/2011, 03:25
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años, 8 meses
Puntos: 344
Respuesta: Checkbox ninguno

Tienes que indicarle que el código se ejecute después de cargarse el DOM de la página. Eso se realiza de dos posibles maneras:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.  
  3. //código a ejecutar
  4. });

ó

Código Javascript:
Ver original
  1. $(function(){
  2.  
  3. //código a ejecutar
  4. });


Si no lo haces así, no te va a funcionar porque los elementos no se han cargado cuando ejecutas el script.
  #5 (permalink)  
Antiguo 01/07/2011, 14:41
 
Fecha de Ingreso: junio-2006
Mensajes: 5
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Checkbox ninguno

ok, hermano muchas gracias ya me funciono
  #6 (permalink)  
Antiguo 05/07/2011, 14:30
 
Fecha de Ingreso: junio-2006
Mensajes: 5
Antigüedad: 18 años, 6 meses
Puntos: 0
Respuesta: Checkbox ninguno

Hola!!, tengo un problema en relacion a tu observacion anterior de indicar el codigo dentro de $(document).ready(function(){

//código a ejecutar
});
poniendo el codigo dentro de $(document).ready(function() si me funciona el checbox ninguno, sin embargo la problematica que se me presenta ahora es que cuando el contenido del formulario es cargado de forma dinamica dicho codigo no funciona.

Otro problema que se me presento es que en un mismo formulario hay varias preguntas y cada pregunta tiene sus propias respuestas. entonces si tengo dos respuestas ninguno para diferentes preguntas como le puedo hacer para reutilizar el mismo codigo. Por ahora la unica solucion que le vi es repetir el codigo.

Este es el codigo que utilizo

/*Checkbox.php*/

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>
<script src="../js/jquery.js" language="javascript" type="text/javascript" ></script>
<script language="javascript" type="text/javascript">
$(document).ready(function(){

$('#boton_cargar').click(function() {
$.ajax({
url: 'formulario.php',
success: function(data) {
$('#div_dinamico').html(data);
}
});
});


$('#ninguno').change(function(){
$('.otros').each(function(i,e){
e.checked = false;
});
});

$('.otros').change(function(){
ninguno= $('#ninguno');
ninguno[0].checked = false;
});

$('#ninguno2').change(function(){
$('.otros2').each(function(i,e){
e.checked = false;
});
});

$('.otros2').change(function(){
ninguno= $('#ninguno2');
ninguno[0].checked = false;
});
});
</script>
</head>
<body>
<input name="boton_cargar" id="boton_cargar" type="button" value="Cargar contenido" />

<div name="div_dinamico" id="div_dinamico" class="div_dinamico"></div> <body>

</body>
</html>


/*formulario.php*/

<table width="100%" border="1">
<tr>
<td height="24"><input type="checkbox" name="Id_Sintomas[]" id="sintomas_1" value="38" class="validate[minCheckbox[1]] otros"
<?php
$correcto = isset($_POST['Id_Sintomas']) ? true : false;
if ($correcto && isset($perdido) && in_array('38', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Dolores abdominales</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_2" value="27" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('27', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Deshidrataci&oacute;n</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_3" value="67" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('67', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Fatiga</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_4" value="16" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('16', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Mareos</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_23" value="70" class="validate[minCheckbox[1]] otros"
<?php
$correcto = isset($_POST['Id_Sintomas']) ? true : false;
if ($correcto && isset($perdido) && in_array('70', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>
Episodios recurrentes de atracones de comida</td>
</tr>
<tr>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_6" value="53" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('53', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Nauseas</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_7" value="21" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('21', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Dolor de cabeza</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_8" value="22" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('22', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Dolor de garganta</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_15" value="72" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('72', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>
Ansiedad por comer</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_11" value="54" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('54', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Debilidad muscular</td>
</tr>
<tr>
<td><input type="checkbox" name="Id_Sintomas[]" id="ninguno" value="28" class="validate[minCheckbox[1]] "
<?php
if ($correcto && isset($perdido) && in_array('28', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Ninguno</td>
<td><input type="checkbox" name="Id_Sintomas[]" id="sintomas_13" onclick="textCheck(this.id,'lb_2','tx_2', 'Otro_Sintoma')" value="7" class="validate[minCheckbox[1]] otros"
<?php
if ($correcto && isset($perdido) && in_array('7', $_POST['Id_Sintomas'])) {
echo 'comprobado="comprobado"';
} ?>/>Otro</td>
<td colspan="3"></td>
</tr>
</table>
<table width="100%" border="1">
<tr>
<td colspan="5" class="pregunta">Indicadores fisicos</td>
</tr>
<tr>
<td height="24"><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_1" value="16" class="validate[minCheckbox[1]] otros2"
<?php
$correcto = isset($_POST['Id_Indicador_Fisico']) ? true : false;
if ($correcto && isset($perdido) && in_array('16', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Notoria perdida de peso</td>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_2" value="17" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('17', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>
Deterioro dental</td>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_3" value="18" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('18', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Perdida de cabello</td>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_4" value="19" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('19', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Piel seca</td>
<td><p>
<input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_5" value="20" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('19', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>
Mal aliento</p></td>
</tr>
<tr>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_6" value="21" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('21', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Interrupcion de la menstruaci&oacute;n (mujeres)</td>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_7" value="22" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('22', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Heridas en la boca</td>
<td><input type="checkbox" name="Id_Indicador_Fisico[]" id="ninguno2" value="23" class="validate[minCheckbox[1]] ninguno2"
<?php
if ($correcto && isset($perdido) && in_array('23', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Ninguno</td>
<td colspan="2"><input type="checkbox" name="Id_Indicador_Fisico[]" id="indicador_fisico_9" onclick="textCheck(this.id,'lb_4','tx_4', 'Otro_Indicador_Fisico')" value="8" class="validate[minCheckbox[1]] otros2"
<?php
if ($correcto && isset($perdido) && in_array('8', $_POST['Id_Indicador_Fisico'])) {
echo 'comprobado="comprobado"';
} ?>/>Otro</td>
</tr>
</table>

Etiquetas: ajax, checkbox
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:41.