Foros del Web » Programando para Internet » Javascript » Frameworks JS »

en un array se pueden enviar checkbox y input ?

Estas en el tema de en un array se pueden enviar checkbox y input ? en el foro de Frameworks JS en Foros del Web. hola amigos en un array puedo enviar un grupo de checkbox y input los cuales los genero dinamicamente? @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original ...
  #1 (permalink)  
Antiguo 21/06/2012, 08:19
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
en un array se pueden enviar checkbox y input ?

hola amigos en un array puedo enviar un grupo de checkbox y input los cuales los genero dinamicamente?


Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.  
  3.     $('#create_account').click(function(){
  4.  
  5.         //var dataString = $('#form_account').serialize();
  6.  
  7.  
  8.             var arrayOpt = new Array;
  9.               $('input[type=checkbox]').each(function() {
  10.                         if ($(this).attr('name') == 'opcion[]') {
  11.                             if ($(this).attr('checked') == 'checked') {
  12.                                 arrayOpt.push($(this).val());
  13.                                 } else{
  14.                                 arrayOpt.push($(this).val()==0);
  15.                                
  16.                                 }
  17.                         }
  18.                     });
  #2 (permalink)  
Antiguo 21/06/2012, 09:11
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

ya envio mediante este codigo

Código Javascript:
Ver original
  1. $("input[name^=txtList]").each(function() {
  2.                         arrayOpt.push($(this).val());
  3.                     });

mediante un alert me doy cuenta que funciona y este es el resultado

checkbox1,checkbox2,checkbox3,input1,input2,input3

pero estos datos los tengo que insertar en una base de datos

de la siguiente manera


Columna1 Columna2
checkbox1 input1
checkbox2 input2
checkbox3 input3


para organizar el array para la insercion debo de hacer en el cliente o en el servidor
  #3 (permalink)  
Antiguo 21/06/2012, 13:55
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

una idea que se me ocurre es iterar el array y organizar los elementos mediante alert(arrayOpt.length); tendria el tamaño del array pero no se como organizar los elementos

Código Javascript:
Ver original
  1. var arrayOpt = new Array;
  2.               $('input[type=checkbox]').each(function() {
  3.                         if ($(this).attr('name') == 'opcion[]') {
  4.                             if ($(this).attr('checked') == 'checked') {
  5.                                 arrayOpt.push($(this).val());
  6.                                 } else{
  7.                                 arrayOpt.push($(this).val()==0);
  8.                                
  9.                                 }
  10.                         }
  11.                        
  12.                        
  13.                         $("input[name^=txtList]").each(function() {
  14.                         arrayOpt.push($(this).val());
  15.                     });
  16.            
  17.                     });
  #4 (permalink)  
Antiguo 22/06/2012, 12:37
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 12 años, 5 meses
Puntos: 127
Respuesta: en un array se pueden enviar checkbox y input ?

Los datos, si son pocos los puedes insertar manualmente

$.ajax ...

data:{"input1":dato1,"input2":dato2 ..}

y luego en el servidor

$_POST/GET['input1']
$_POST/GET['input2']
...

SI los recorres con un bucle for (each) tendrás que ajustar el servidor para saber en qué orden los recibe para insertarlos luego en el servidor, así que tendrás tarde o temprano que ordenarlos manualmente.

La otra alternativa es comprobar cada dato para ver si se ajusta a una columna determinada para luego determinar el orden, pero es más costoso.

Un saludo.
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #5 (permalink)  
Antiguo 22/06/2012, 14:52
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

existe alguna menera de ordenarlo mediante js , jquery


Código Javascript:
Ver original
  1. var arrayOpt = new Array;
  2.  
  3.              
  4.          
  5.  
  6.               $('input[type=checkbox]').each(function() {
  7.                         if ($(this).attr('name') == 'opcion[]') {
  8.                             if ($(this).attr('checked') == 'checked') {
  9.                                 arrayOpt.push($(this).val());
  10.                                 } else{
  11.                                 arrayOpt.push($(this).val()==0);
  12.                                
  13.                                 }
  14.                      }
  15.             });
  16.                    
  17.             $("input[name^=txtList]").each(function() {
  18.                         arrayOpt.push($(this).val());
  19.                     });


con el codigo obtengo esto false,false,false,input1,input2,input3

y necesito false ,input1,false, input 2 , false, input 3

el problema es que son muchos datos.
  #6 (permalink)  
Antiguo 22/06/2012, 14:56
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

el problema radica inicialmente es que tengo que asiganarle un valor a checkbox cuando no estan activos

intente aplicar el siguiente codigo pero me fue imposible

http://www.codigomanso.com/es/2008/1...r-formularios/

alguien sabe como hacerlo
  #7 (permalink)  
Antiguo 22/06/2012, 15:10
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 12 años, 5 meses
Puntos: 127
Respuesta: en un array se pueden enviar checkbox y input ?

Estás usando algún plugin de JQuery o sólo JQuery?
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor
  #8 (permalink)  
Antiguo 22/06/2012, 16:24
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

estoy usando solo jquery
  #9 (permalink)  
Antiguo 22/06/2012, 18:34
Avatar de dontexplain  
Fecha de Ingreso: junio-2012
Mensajes: 536
Antigüedad: 12 años, 5 meses
Puntos: 127
Respuesta: en un array se pueden enviar checkbox y input ?

Cita:
mira te comento la situacion para que me aconsejes

es este formulario tengo un grupo de checkbox los cuales debo de insertar en una base de datos
el checkbox va a tomar un valor activo y 0 cero inactivo

a la bade de datos debo de enviar

el checkbx y 2 campo hidden esto se debe de repetir n veces deacuerdo a una consulta de base de datos


mi idea es enviar un array con estos dos campos


esoy bien o estoy mal ?

k consejo me das
Utiliza dos object, el primero para los dos checkbox y el otro para los dos campos hidden

arrcheckbox = {};
arrhidden = {};

$("input[type=checkbox]").each(function(i){

if($(this).attr("checked")){
arrcheckbox[i]="activo";
} else {
arrcheckbox[i]="inactivo";
}

})

$("input[type=hidden]").each(function(i){

arrhidden[i]=$(this).val();

})

----------
Al elemento object se le añaden elementos usando objeto[indice] donde indice será la clave del objeto, que puede ser una cadena de texto o un número. Se pueden concatenar cosas, usando i, que es incremental, podrías hacer

arrcheckbox['checkbox'+i]

por lo que si el puntero es 4 la salida sería arrcheckbox['checkbox4'] y por tanto en el servidor se accedería mediante

$_GET/POST['arrcheckbox']['checkbox4']

Para enviar los dos objetos simplemente

$.ajax...

data: {"arrcheckbox": checkbox, "arrhidden": arrhidden}

....
__________________
21añero.
HTML/CSS, PHP, JS/jQuery, Mysql; NodeJS/Socket.io (& V8); C++ ; Python (wxpy); Ensamblador.
Músico (clarinetista/pianista) y compositor

Última edición por dontexplain; 22/06/2012 a las 18:39
  #10 (permalink)  
Antiguo 22/06/2012, 21:00
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

dontexplain gracias por responder


hasta el momento llevo lo siguiente

Código Javascript:
Ver original
  1. <script src="http://code.jquery.com/jquery-latest.js"></script>
  2. <script type="text/javascript">
  3. $(document).ready(function() {
  4.  
  5.     $('#create_account').click(function(){
  6.  
  7. arrcheckbox = {};
  8. arrhidden = {};
  9.    
  10. $("input[type=checkbox]").each(function(i){
  11.  
  12. if($(this).attr("checked")){
  13. arrcheckbox[i]="activo";
  14. } else {
  15. arrcheckbox[i]="inactivo";
  16. }
  17.  
  18. })
  19.  
  20. $("input[type=hidden]").each(function(i){
  21.  
  22. arrhidden[i]=$(this).val();
  23.  
  24. })
  25.  
  26.         var noma= $("#nombre").val();
  27.         var corra= $("#correo").val();
  28.         var telea= $("#telefono").val();
  29.  
  30.  
  31. param="nom="+noma+"&corr="+corra+"&boletines="+arrcheckbox+"&tele="+telea;
  32. alert("Nombre:"+" "+noma+"\n"+"Correo:"+" "+corra+"\n"+"Telefono:"+" "+telea+"\n"+"boletines:"+" "+arrcheckbox);
  33.  
  34.  
  35.  $.ajax({
  36.             type: "POST",
  37.             url: "account.php",
  38.             data: param,
  39.             success: function(data) {
  40.            
  41.  
  42.             }
  43.         });
  44.     });
  45. });
  46.  
  47. </script>

y el formulario es el siguiente

Código HTML:
Ver original
  1. <form id="form_account" method="post">
  2.     Nombre:
  3.     <input type="text" name="nombre" id="nombre" />
  4.     <br/>
  5.     <br/>
  6.     Email:
  7.     <input type="text" name="correo" id="correo" />
  8.     <br/>
  9.     <br/>
  10.     Telefono :
  11.     <input type="text" name="telefono" id="telefono" />
  12.     <br/>
  13.     <br/>
  14.     boletines 1 :
  15.     <input class="chk" type="checkbox" name="opcion[]" value="checkbox1" />
  16.     <input type="hidden" name="txtList[]2" value="input1" >
  17.     <br/>
  18.     <br/>
  19.     boletines 2 :
  20.     <input name="opcion[]" type="checkbox" class="chk" id="opcion[]" value="checkbox2" />
  21.     <input type="hidden" name="txtList[]3" value="input2" >
  22.     <br/>
  23.     <br/>
  24.     boletines 3 :
  25.     <input name="opcion[]" type="checkbox" class="chk" id="opcion[]" value="checkbox3" />
  26.     <input type="hidden" name="txtList[]" value="input3" >
  27.     <br/>
  28.  
  29.         <input type="submit" name="enviar" value="Enviar" id="create_account" />
  30. </form>

tengo problemas para implementarlo no me funciona
  #11 (permalink)  
Antiguo 23/06/2012, 07:53
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

consultando en la web me doy cuenta que tengo erros

por ejemplo

los coloque asi

arrcheckbox = {};
arrhidden = {};

y debe de ser asi

var rrcheckbox = {};
var arrhidden = {};
  #12 (permalink)  
Antiguo 23/06/2012, 10:17
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

hasta el momento llevo esto pero no se que estoy haciendo mal que no me funciona

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2. $(document).ready(function() {
  3.  
  4.        $('#create_account').click(function(){
  5.  
  6.        var   arrcheckbox = {};
  7.        var   arrhidden = {};
  8.  
  9.  
  10.     $("input[type=checkbox]").each(function(i){
  11.  
  12.      if($(this).attr("checked")){
  13.      arrcheckbox[i]="activo";
  14.     // alert("Activo");
  15.      } else {
  16.      arrcheckbox[i]="inactivo";
  17. //alert("Inactivo");
  18.      }
  19.  
  20.     })
  21.  
  22.     $("input[type=hidden]").each(function(i){
  23. //alert(i),
  24.     arrhidden[i]=$(this).val();
  25.  
  26.    })
  27.  
  28.                
  29.    
  30.                
  31.                
  32.  
  33.        
  34.         var noma= $("#nombre").val();
  35.         var corra= $("#correo").val();
  36.         var telea= $("#telefono").val();
  37.        
  38.        
  39.    
  40.         alert(arrcheckbox);    
  41.    
  42.             //param="nom="+noma+"&corr="+corra+"&boletines="+arrcheckboxt+"&tele="+telea;
  43.           // alert("Nombre:"+" "+noma+"\n"+"Correo:"+" "+corra+"\n"+"Telefono:"+" "+telea+"\n"+"boletines:"+" "+arrcheckbox);
  44.          //  alert(arrayOpt.length);
  45.  
  46.         $.ajax({
  47.             type: "POST",
  48.             url: "account.php",
  49.             data: {"arrcheckbox": checkbox, "arrhidden": arrhidden,"nombre":noma},
  50.              }).done(function(data) {
  51.                
  52.                  
  53.                
  54.    
  55.                   });;
  56.     });
  57. });
  58.  
  59. </script>

Código HTML:
Ver original
  1. <form id="form_account" method="post">
  2.     Nombre:
  3.     <input type="text" name="nombre" id="nombre" />
  4.     <br/>
  5.     <br/>
  6.     Email:
  7.     <input type="text" name="correo" id="correo" />
  8.     <br/>
  9.     <br/>
  10.     Telefono :
  11.     <input type="text" name="telefono" id="telefono" />
  12.     <br/>
  13.     <br/>
  14.     boletines 1 :
  15.     <input class="chk" type="checkbox" name="opcion[]" value="checkbox1" />
  16.     <input type="text" name="txtList[]2" value="input1" >
  17.     <br/>
  18.     <br/>
  19.     boletines 2 :
  20.     <input name="opcion[]" type="checkbox" class="chk" id="opcion[]" value="checkbox2" />
  21.     <input type="text" name="txtList[]3" value="input2" >
  22.     <br/>
  23.     <br/>
  24.     boletines 3 :
  25.     <input name="opcion[]" type="checkbox" class="chk" id="opcion[]" value="checkbox3" />
  26.     <input type="text" name="txtList[]" value="input3" >
  27.     <br/>
  28.     <br/>
  29. boletines 4 :
  30.     <input name="opcion[]" type="checkbox" class="chk" id="opcion[]" value="checkbox4" />
  31.     <input type="text" name="txtList[]" value="input4" >
  32.     <br/>
  33.     <br/>
  34.  
  35.   </p>
  36.     <p>&nbsp;</p>
  37.   <p>&nbsp;</p>
  38.     <p><br/>
  39.         <input type="submit" name="enviar" value="Enviar" id="create_account" />
  40. </form>
  #13 (permalink)  
Antiguo 24/06/2012, 13:44
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 14 años, 2 meses
Puntos: 6
Respuesta: en un array se pueden enviar checkbox y input ?

hola amigos tengo problemas en la parte de concatenar y enviar el elemento object

he estado realizando pruebas

Código Javascript:
Ver original
  1. jQuery.each(arrhidden, function(key, value) {
  2.    alert("el: "+" "+key+" "+"Valor:"+" "+value);
  3.  });


yo tendria elemento object

y necesito enviar para ser guardado en la base de datos el dato que esta en la primera posicion del elemento object arrcheckbox y el dato que esta en la primera pósicion del elemento object arrcheckbox

osea necesitaria concatenar lo de los dos elementos

como lo puedo hacer_

Etiquetas: checkbox, input
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 11:54.