Foros del Web » Programando para Internet » Jquery »

actualizar item de varios combobox con ajax

Estas en el tema de actualizar item de varios combobox con ajax en el foro de Jquery en Foros del Web. Hola espero su ayuda con este problema. traigo desde la bd unos combobox todos iguales pero en diferentes registros, digamos tal persona ha hecho 3 ...
  #1 (permalink)  
Antiguo 27/10/2017, 15:57
 
Fecha de Ingreso: octubre-2011
Mensajes: 132
Antigüedad: 12 años, 6 meses
Puntos: 4
Sonrisa actualizar item de varios combobox con ajax

Hola espero su ayuda con este problema.

traigo desde la bd unos combobox todos iguales pero en diferentes registros, digamos tal persona ha hecho 3 pedidos en diferentes horas y estos combobox tiene la opcion de: "Pendiente q esta por default" y "Aprobado" y "Rechazado"

entonces genera en la misma tablita q se muestra para esa persona 3 registros con su combobox, mi pregunta es com puedo actualizar dinamicamente cada uno de esos combobox?, con uno independiente lo puedo hacer pero con 3 solo me actualiza el primero.

Pdta. Se debe seleccionar un item de un combobox y se actualiza en la BD y ais para cada uno de esos registros.

est es mi codigo con el que los traigo

Código PHP:
<select id="estado_oym" name="estado_oym" class="form-control selectpicker" data-width="fit" data-style="">
                                    {foreach 
from=$estado_v item=esto}
                                    <
option codigooym="{$dato.CODIGO}" idoym="{$fe.ID}" value="{$esto.ID}" data-icon="" id="estados_oym" class="text-uppercase" {if ($esto.ID == $fe.ID_ESTADO_OYM)} selected="selected" {/if}>{$esto.ESTADO_V} - {$dato.CODIGO}</option>
                                    {/foreach}
                                </
select
y este el ajax con el que envio

Código Javascript:
Ver original
  1. $("#estado_oym").change(function() {
  2.         var estadooym = $(this).children(":selected").val();
  3.         var codigooym = $("#estados_oym").attr("codigooym");
  4.         var idoym = $("#estados_oym").attr("idoym");
  5.         $.ajax({
  6.             type: "POST",
  7.             url: _root_ + 'validacion/detalle/' + codigooym,
  8.             data: {
  9.                 codigo: codigooym,
  10.                 id: idoym,
  11.                 estado_oym: estadooym
  12.             },
  13.             success: function(msg) {
  14.                 if (msg != "") {
  15.                     /***codigo ***/
  16.                 }
  17.    
  18.             }
  19.         });
  20.     });

gracias de antemano por su pronta ayuda

Última edición por stevens82; 27/10/2017 a las 16:03
  #2 (permalink)  
Antiguo 27/10/2017, 18:25
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: actulizar item de varios combobox con ajax

te comento que no debes ponerle la misma id a los combox, porque te va a dar problemas, juega copn una clase, por ejemplo:

Código HTML:
Ver original
  1. $(".talcosa").change(function() {

por otro lado, puedes jugar tambienh con los atributos data para ayudarte por ejemplo:

Código HTML:
Ver original
  1. <select data-id="loquesea">

de esa manera diferencio yo los selectores cuando los cargo dinamicamente
__________________
[email protected]
HITCEL
  #3 (permalink)  
Antiguo 27/10/2017, 23:53
 
Fecha de Ingreso: octubre-2011
Mensajes: 132
Antigüedad: 12 años, 6 meses
Puntos: 4
Respuesta: actulizar item de varios combobox con ajax

Si tines razon no recordaba sobre los id los camibe solo les puse la clase pero aun no me funciona la actualizacion :(

al hacer esto me pones los mismo valores en todos los campos

Código Javascript:
Ver original
  1. $(".estados_oym").each(function(){
  2.          var idoym = $(this).attr("idoym");
  3.          $(".idoym").val(idoym);
  4.     });

Última edición por stevens82; 28/10/2017 a las 00:12
  #4 (permalink)  
Antiguo 28/10/2017, 03:35
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: actulizar item de varios combobox con ajax

Y si se hace un console.log a la variable idoym
muestra cada id correctamente?
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #5 (permalink)  
Antiguo 28/10/2017, 11:36
 
Fecha de Ingreso: octubre-2011
Mensajes: 132
Antigüedad: 12 años, 6 meses
Puntos: 4
Respuesta: actulizar item de varios combobox con ajax

console.lo me sale;
undefined
1404
undefined
1405

Código Javascript:
Ver original
  1. $(".estado_oym").change(function() {
  2.         $(".estados_oym").each(function() {
  3.             // var idoym = $(this).children().attr("idoym");
  4.             //  var idoym = $(this).children().attr("idoym");
  5.             var estadooym = $(this).children().val();
  6.             var codigooym = $(this).attr("codigooym");
  7.             // var idoym = $(this).data('idoy');
  8.             var idoym = $(this).attr("idoym");
  9.             console.log(idoym);
  10.             $.ajax({
  11.                 type: "POST",
  12.                 url: _root_ + 'validacion/detalle/' + codigooym,
  13.                 data: {
  14.                     codigo: codigooym,
  15.                     id: idoym,
  16.                     estado_oym: estadooym
  17.                 },
  18.                 success: function(msg) {
  19.  
  20.                 }
  21.             });
  22.         });
  23.     });
  #6 (permalink)  
Antiguo 28/10/2017, 12:01
 
Fecha de Ingreso: octubre-2011
Mensajes: 132
Antigüedad: 12 años, 6 meses
Puntos: 4
Respuesta: actulizar item de varios combobox con ajax

Bueno ya lo resolvi gracias por su ayuda :D

Código Javascript:
Ver original
  1. $(".estado_oym").change(function() {
  2.             var estadooym = $(this).val();
  3.             var codigooym = $(this).children().attr("codigooym");
  4.             var idoym = $(this).children().attr("idoym");
  5.             console.log(estadooym);
  6.             console.log(codigooym);
  7.             console.log(idoym);
  8.             $.ajax({
  9.                 type: "POST",
  10.                 url: _root_ + 'validacion/detalle/' + codigooym,
  11.                 data: {
  12.                     codigo: codigooym,
  13.                     id: idoym,
  14.                     estado_oym: estadooym
  15.                 },
  16.                 success: function(msg) {
  17.  
  18.                 }
  19.             });
  20.         });

Etiquetas: ajax, combobox, item
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 22:58.