Ver Mensaje Individual
  #2 (permalink)  
Antiguo 05/06/2016, 13:45
Avatar de kip13
kip13
 
Fecha de Ingreso: agosto-2011
Mensajes: 167
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: Enviar el valor de un select por AJAX (con jQuery)

Hola. prueba asi:

Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.     <meta charset="UTF-8" />
  3.     <title>Calculadora sencilla de AJAX</title>
  4.     <script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
  5.     <script>
  6.         function realizaProceso(valorCaja1, valorCaja2, operacion){
  7.             var parametros = {
  8.                 "valorCaja1" : valorCaja1,
  9.                 "valorCaja2" : valorCaja2,
  10.                 "operacion" : operacion
  11.             };
  12.             $.ajax({
  13.                 data:  parametros,
  14.                 url:   'suma.php',
  15.                 type:  'post',
  16.                 beforeSend: function () {
  17.                     $("#resultado").html("Procesando...");
  18.                 },
  19.                 success:  function (response) {
  20.                     $("#resultado").html(response);
  21.                 }
  22.             });
  23.         };
  24.     </script>
  25. </head>
  26.  
  27.     Introduce valor 1
  28.     <input type="number" name="valorCaja1" id="valor1" value="0" /><br />
  29.     Elige la operación:
  30.     <select id="operacion" name="operacion">
  31.         <option value="suma">+</option>
  32.         <option value="resta">-</option>
  33.     </select><br />
  34.     Introduce valor 2
  35.     <input type="number" name="valorCaja2" id="valor2" value="0" /><br />
  36.     <input type="button" onclick="realizaProceso($('#valor1').val(), $('#valor2').val(), $('#operacion').val());return false;" value="Calcular"/>
  37.  
  38. Resultado: <span id="resultado"></span>
  39. </body>
  40. </html>

Código PHP:
Ver original
  1. <?php
  2. $operacion = $_POST['operacion'];
  3.  
  4. if ($operacion == 'resta') {
  5.    $resultadoresta = $_POST['valorCaja1'] - $_POST['valorCaja2'];
  6.     echo $resultadoresta;
  7. } else {
  8.     $resultado = $_POST['valorCaja1'] + $_POST['valorCaja2'];
  9.     echo $resultado;
  10. }
  11. ?>

O en luga de if y else podrias usar switch:
Código PHP:
Ver original
  1. <?php
  2.     $operacion = $_POST['operacion'];
  3.  
  4.     switch ($operacion){
  5.            case "resta" : echo $_POST['valorCaja1'] - $_POST['valorCaja2']; break;
  6.            case "suma" : echo $_POST['valorCaja1'] + $_POST['valorCaja2']; break;
  7.     }
  8. ?>
Saludos

Última edición por kip13; 05/06/2016 a las 13:59