Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/04/2014, 07:00
pabliich
 
Fecha de Ingreso: marzo-2010
Mensajes: 28
Antigüedad: 14 años, 1 mes
Puntos: 0
Pregunta Actualizar valores

Hola gente, tengo una lista de productos donde cada producto tiene un select para seleccionar el modelo del producto.


Al seleccionar el modelo se me tiene que actualizar automaticamente 3 valores, "Precio" "Disponibilidad" y "Producto ID".
Con el siguiente código se me actualizan estos valores, el problema es que se me actualiza siempre y cuando sean un INPUT y esten uno seguido del otro y en mi codigo Precio si esta en un input, pero disponibilidad y producto id son variables php que estan como atributo html.

Les dejo el código:

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     //funcion que limpia los demas campos
  3.     function LimpiarInput(destino,destino2)
  4.     {
  5.         destino.value="";  
  6.     }
  7.     //funcion que llena los datos
  8.     function LlenarDatos(text,destino,destino2)
  9.     {
  10.         var datos = text.split('|'); //dividimos los datos para colocarlos en el lugar correcto    
  11.         destino.value = datos[0];
  12.         destino2.value = datos[1];
  13.     }  
  14.     //fucion con la cual obtenemos  los datos
  15.     function obten_datos(arrastre,destino,destino2)
  16.     {  
  17.         //alert("arrastre: "+arrastre+" destino: "+destino+" destino2: "+destino2+" destino3: "+destino3+" destino4: "+destino4+" destino5: "+destino5);
  18.         destino = document.getElementById(destino);
  19.         destino2 = document.getElementById(destino2);
  20.         LimpiarInput(destino);
  21.         LimpiarInput(destino2);
  22.         if(arrastre.options[arrastre.selectedIndex].value != 0)
  23.         {
  24.             arrastre.disabled = true;
  25.             destino.disabled = true;
  26.             destino.value = 'Cargando Precio....';
  27.             destino2.disabled = true;
  28.             destino2.value = 'Cargando ID ....';    
  29.             $.ajax({
  30.                 type: 'get',
  31.                 dataType: 'text',
  32.                 url: 'catalog/model/catalog/obtendatos.php',
  33.                 data: {valor: arrastre.options[arrastre.selectedIndex].value},
  34.                 success: function(text){
  35.                     LlenarDatos(text,destino,destino2);
  36.                     arrastre.disabled = false;
  37.                     destino.disabled = false;
  38.                     destino.readOnly = true;
  39.                     destino2.disabled = false;
  40.                     destino2.readOnly = true;
  41.                         }
  42.             });    
  43.         }
  44.     }
  45. </script>              
  46.  
  47. <select name="name" id="name" onchange="javascipt:obten_datos(this,'price','product_id');">
  48. <option value=" ">Seleccione cantidad</option>
  49. <option value="<?php echo $result['model']; ?>"><?php echo $result['model']; ?></option>
  50. </select>

Código PHP:
Ver original
  1. <?php
  2. require_once('../../../config.php');
  3. require_once(DIR_SYSTEM . 'startup.php');
  4. $db = new DB(DB_DRIVER, DB_HOSTNAME, DB_USERNAME, DB_PASSWORD, DB_DATABASE);
  5. $valor = $_GET['valor'];
  6. $resultado = mysql_query("SELECT * FROM product WHERE model LIKE '%" . $valor . "%'");
  7. $row = mysql_fetch_array($resultado);
  8. echo $row['price'].'|'.$row['product_id'];
  9. sleep(1);
  10. return $dat =  $row['price'].'|'.$row['product_id'];  
  11.    
  12. ?>


Y el codigo con el que se genera mi lista de productos:

Código HTML:
Ver original
  1. <div class="description"><?php echo $product['description']; ?></div>
  2.                                 <?php if ($product['price']) { ?>
  3.                                     <div class="price">
  4.                                     <span><?php echo $text_price; ?></span>
  5.                                    
  6.                                     <input type="text" name="price"           id="price"  class="input_text" />
  7.                                        
  8.                                 <div class="actions">
  9.                                     <div class="cart">
  10.                                     <?php if ($product['price']) { ?>
  11.                                     <?php echo $product['Disponibilidad']; ?>
  12.                                     <?php } ?><br /><br /> Cantidad:
  13.                                     <input type="text" name="quantity" value="" class="input-mini" id="quantity-<?php echo $product['product_id']; ?>"/>
  14.                                     <?php if ($product['Disponibilidad'] !== "Sin disponibilidad") { ?>
  15.                                     <input type="button" value="<?php echo $button_cart; ?>" onclick="addQtyToCart('<?php echo $product['product_id']; ?>');" class="btn btn-cart btn-small" />
  16.                                     <?php } ?>
  17.                                     </div>
  18.  
  19.                                 </div>

Yo necesitaria actualizar o cargar:
1. $product['product_id']
2. <input type="text" name="price" id="price" class="input_text" />
3. $product['Disponibilidad']

Es posible hacerlo?