Comunidad de diseño web y desarrollo en internet online

CheckBOX

Citar            
MensajeEscrito el 26 Mar 2008 01:34 am
Tengo este codigo

Código :

<html> 
<head> 
<script> 
function comprobarCheckBox(){ 
if (document.frm.checkbox1.checked) 
alert("PrimeroCheckeado"); 
if (document.frm.checkbox2.checked) 
alert("SegundoCheckeado"); 

} 

</script> 
</head> 
<body> 
<form name="frm"> 
<input type="checkBox" id="checkbox1" value="checkbox1" name="st">Selection A<br> 
<input type="checkBox" id="checkbox2" value="checkbox2">Selection B<br> 
<input type="button" value="Comprobar" onClick="comprobarCheckBox()"> 
</form> 
</body> 
</html> 


pero lo que quiero es que al dar clic en el checkbox aparezca un input para introducir un precio es decir ejecutar la funcion cuando le de clic en el check

Espero que me echen la mano saludos

Por joshuavw

Claber

306 de clabLevel



Genero:Masculino  

Juego, aprendo y programo

msie7
Citar            
MensajeEscrito el 26 Mar 2008 01:51 am
Para añadir elementos a tus páginas WEB una vez hayan sido cargadas, usa el método: "$contenedor.appendChild($nuevo_elemento)".
Lo he explicado muy profusamente en estos dos hilos.

Básicamente sería:

Código :

<script>
function nuevo_input(name,contenedor)
{/* crea un nuevo elemento '<innput>' */
 nuevo_elemento=document.createElement('input');
/* le da sus atributos */
 nuevo_elemento.setAttribute('type','text');
 nuevo_elemento.setAttribute('name',name);
/* lo posiciona en 'contenedor' */
 contenedor=document.getElementById(contenedor);
 contenedor.appendChild(nuevo_elemento);
 }
</script>
<body>
<input onclick="javascript:nuevo_input('nonmbre_del_nuevo_input','id_del_contenedor');" />
<div id="id_del_contenedor"><!-- Capa contenedora del nuevo '<innput>' //--></div>
</body>

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 27 Mar 2008 06:25 pm
me sirvio mucho tu codigo e hice mis modificaciones, ya que mi checkbox es un arreglo y cada uno tendra su input cada uno, mi problema es:
1. como puedo identificar el nombre de mi input para cada checkbox y asi referenciarlo para que los datos introducidos ahi lo almacene en mi bd.
aqui esta el codigo de la funcion modificada:

Código :

function nuevo_input(name,contenedor,obj){

if (document.getElementById('chkservicios'+obj).checked) {
/* crea un nuevo elemento '<innput>' */ 
var nuevo_elemento=document.createElement('input');
/* le da sus atributos */ 
nuevo_elemento.setAttribute('type','text');
nuevo_elemento.setAttribute('name',name);
/* lo posiciona en 'contenedor' */
contenedor=document.getElementById(contenedor);
contenedor.appendChild(nuevo_elemento);
}
else
{
borrar_hijo_de=document.getElementById(contenedor);
borrar_hijo_de.removeChild(borrar_hijo_de.lastChild);
}
}

y aqui donde lo llamo en php

Código :

<div class="seccion" id="ligser_contenedor">Servicios a ligar a este evento

<? if($consultaB){ ?><br /><br /><span class="titulo">Los servicios fueron ligados a este evento.</span><br /><br /><? } ?>

<form name="frmligarser" id="frmligarser" method="post" action="">

<?

for($c=0;$c<count($categorias);$c++){

   $sql = "SELECT * FROM servicios WHERE categoria='".$categorias[$c]."'";

   $consulta = @mysql_query($sql);

   $filas = @mysql_num_rows($consulta);

   if($consulta){

      ?><a href='javascript: toggle("<? echo $categorias[$c]; ?>")'><img src="../images/icono_flecha.gif" border="0" /><? echo $categorias[$c]; ?></a><br />

      <div class="ligser_servicio" id="<? echo $categorias[$c]; ?>" style="display:none"><?

      for($i=0;$i<$filas;$i++){ ?>

           <div id="ligser_chk">

           <input name="chkservicios[]" id="chkservicios<? echo $i; ?>" onclick="javascript:nuevo_input('nombre_del_nuevo_input','id_del_contenedor','<? echo $i; ?>');" type="checkbox" value="<? echo mysql_result($consulta,$i,"idservicio"); ?>" <? if(encontrarEnTabla("evento_servicios","idevento","idservicio",$idevt,mysql_result($consulta,$i,"idservicio"))){ ?>checked="checked"<? } ?>  />

           <label><? echo htmlspecialchars(stripslashes(mysql_result($consulta,$i,"concepto"))); ?></label>
              <div id="id_del_contenedor"><!-- Capa contenedora del nuevo '<innput>' //--></div>
  <!--


        </div>
           <?

        

      }

      ?></div><?

   }

}

?>

   <input type="hidden" name="hdidevt" id="hdidevt" value="<? echo $idevt; ?>" />

   <div id="ssbotones">

      <input name="cmdVolver" id="cmdVolver" type="button" onclick="javascript:location.href='menu.php';" value="Menu Principal" />

           &nbsp;&nbsp;

           <input name="cmdVolver" type="button" id="cmdVolver" value="Volver al evento" onclick="javascript:location.href='mod_evento.php?idevt=<? echo $idevt; ?>';" />

           &nbsp;&nbsp;

         <input name="cmdGuardar" type="submit" id="cmdGuardar" value="Ligar Servicios" />

   </div>

</form>

</div>

</body>

</html>

<? 

y otro problema que tengo es como puedo posicionar dicho contenedor ya que cuando locreo se acumulan en forma horizontal :crap:

Saludos cordiales de uno novato programador web

Por joshuavw

Claber

306 de clabLevel



Genero:Masculino  

Juego, aprendo y programo

msie7
Citar            
MensajeEscrito el 28 Mar 2008 12:18 pm
Ehm... intenta re-xplicarte lo que quieres con ese laaargo código... pues no tengo time de analizzarlo entero.
Si lo que quieres es relacionar cada "checkbox->input"... no vale con el propio nombre?
ejemplo:
<checkbox name="nombre1"> -> click -> te genera un <input name="input_nombre1">
es decir, con tu función, le darías el nombre así:

Código :

<input name="nombre1" type="checkbox" onclick="javascript:nuevo_input('input_'+this.name,contenedor,obj)"
Así luego, las variables que manda el formulario son:
  • nombre1 e input_nombre1 -> porque se seleccionó "nombre 1"
  • nombre2 e input_nombre2 -> porque se seleccionó "nombre 2"
  • nombre3 = "no seleccionado"
  • nombre4 e input_nombre4 -> porque se seleccionó "nombre 4"
  • nombre5 = "no seleccionado"
¿entendí lo que querías decir?


En cuanto al formateo... para que no te aparezcan uno bajo otro... eso es algo que le queda por hacer a tu "CSS".
Para ello, podrías usar, por ejemplo, la propiedad "display:inline;"

Código :

<style>.u1{display:inline;}</style>
<div class="u1">a</div><div class="u1">b</div><div class="u1">c</div>
Hay muchas más propiedades de "display", que pueden servirte para formatear listas, tablas...

Por El Oso Amoroso

Claber

1780 de clabLevel

6 tutoriales

 

Madrid, España, Europa, Eurasia, La Tierra, Sist.Solar, Vía Láctea, UNIVERSO

firefox
Citar            
MensajeEscrito el 28 Ene 2009 05:51 pm
una pregunta bien simple, solo quiero saber q pongo en mi consulta sql para q guarde mis checkboxs, puse el foreach y me sale los resultados correctamente de los checkboxs marcados, pero como hago para q se guarde en mi base de datos?? tengo la conexion y todo, me guarda los demas campos menos el del checkboxs.

Por danraf77

3 de clabLevel



 

chrome
Citar            
MensajeEscrito el 06 Feb 2009 06:54 pm
postea la instruccion sql actual que NO te esta guardando los checkbox

Por NeoCesar

Claber

1415 de clabLevel

14 tutoriales

Genero:Masculino  

Algun lugar dentro de la Matrix (Lima - Perú)

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.