• Lunes 23 de Diciembre de 2024, 04:11

Autor Tema:  Iteracion each+$.get jquery  (Leído 1631 veces)

DIEGOCARDENAS

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Iteracion each+$.get jquery
« en: Jueves 20 de Agosto de 2009, 16:58 »
0
Estoy diseñando un formulario el cual realiza actualizacion de campos de texto de precios, segun el proveedor que seleccione el usuario, al usuario seleccionar un proveedor desde un combo los campos de texto etiquetados como valor unitario deberan cambiar segun los precios que maneja dicho provvedor en esos productos,el codigo del formulario es el siguiente:  
Código: Text
  1.  
  2. valores = new Array();//Variable la cual captura los valores enviados desde el archivo en php mediante un arreglo
  3. $("#aprobar tbody .requiered").each(function(i){//En esta linea estoy recorriendo la tabla con el id:'Aprobar' me ubico en el tbody de la table y extraigo los                                     campos de texto etiquetados con la clase:'required'
  4.   var producto_c = $(this).attr("value");//Recupero el valor del primer campo de texto osea el nombre del primer producto
  5.    $.get("consultar_precios.php",{producto : producto_c, distribuidor : proveedor, posicion : i},function(valores){
  6.    //Ejecuto el metodo $.get de jquery/ajax para recuperar los valores, la i corresponde a la posicion del producto dentro del DOM.
  7.     $("#cargando_imagen").ajaxStart(function(){
  8.             $(this).show("slow");
  9.                    });
  10.             $("#cargando_imagen").ajaxStop(function(){
  11.                 $(this).hide("slow");
  12.                      });
  13.                         alert(valores);
  14.                       });   
  15.                     });
  16.                  }
  17.         });
  18.     });
  19. </script>
  20.  
  21.  
Lo que necesito es que en cada iteracion en each mediante el metodo $.get de ajax me devuelva el valor de los productos uno a uno los cuales esten etiquetados con la clase Required, el problema es que lo desarrollo pero me esta devolviendo solo el valor del primer producto, osea que el metodo $.get tan solo lo esta ejecutando para el primer producto con posicio eq(0) en el formulario.ayuda por favor....
este es el codigo php al cual esta solicitando los precios de los productos en el metodo $.get...
Código: PHP
  1.  
  2. [color=#404040]<?php
  3.    include("include/config.php");
  4.    $posicion = $_REQUEST['posicion'];//Capturo la posicion del elemento enviado por el metodo $.get
  5.    $producto = Array($posicion=>$_REQUEST['producto']);//Capturo el nombre del producto enviado por el metodo $.get y lo guardo mediante un arra asociativo
  6.    $distribuidor = $_REQUEST['distribuidor'];//Capturo el id del proveedor enviado por el metodo $.get
  7.    $consulta = ("SELECT valor FROM item WHERE descripcion_item = '$producto' and empresa_id = '$distribuidor'");
  8.    $resultado = mysql_query($consulta,$con_db) or die ("Resultado:".urlencode(mysql_error()));
  9.    $num_registros = mysql_num_rows($resultado);
  10.    $valor_producto = new ArrayObject();
  11.     if($num_registros > 0){
  12.        While($rs = mysql_fetch_array($resultado)){
  13.           $valor_producto = $rs['valor'];
  14.        }
  15.         echo("La posicion ".$posicion." corresponde a el producto ".$producto." el cual cuesta:".$valor_producto." pesos la unidad.");
  16.     }
  17.     else{
  18.         echo("Este Proveedor no distribuye este producto:".$producto.".");
  19.     }
  20. ?>[/color]
  21.  
  22.