Formulario con javascript y php onclick etc...

Iniciado por nobo, 1 Marzo 2012, 22:50 PM

0 Miembros y 1 Visitante están viendo este tema.

nobo

Pues eso... Tengo un formulario con unos radio... Y me gustaria que cuando selecciono un radio (onclick) cargue unos datos en la misma pagina.... Y cuando ya se haya seleccionado un radio y se de al boton de Enviar vaya a finalizacion.php (por ejemplo),, No se si se puede hacer asi... O que...

Shell Root

No entendí, pero con jQuery creo que lo puedes hacer.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

nobo

Mira yo tengo este form:

Código (php) [Seleccionar]
<form id="form1" name="form1" method="post" action="carrito_finalizacion.php">
     <p>
      <input name="radio" type="radio" id="radio" value="1" checked="checked" onclick="this.form.action='carrito_forma_pago.php';this.form.submit();" />
      <label for="radio">Contra reembolso <?php echo $_SESSION["totalcompra"] + 8?>€</label><br />
       
      <input type="radio" name="radio" id="radio" value="2" onClick="submitform()" />
      <label for="radio">Transferencia</label><br />
         
   
     
         
   
      <input type="radio" name="radio" id="radio" value="3" onClick="submitform()" />
      <label for="radio">PayPal</label><br />
        </p>
     
      <p>
      <input type="submit" name="button" id="button" value="Pagar" />
</p>


Y quiero que al seleccionar uno de los radio imprima en pantalla unos datos por ejemplo el resumen del carrito... Para poder sumar gastos de envio, restar etc...

Y que cuando se pulse el boton pagar vaya a carrito_finalizacion.php
        </form>

WHK

Código (html4strict) [Seleccionar]
<form id="form1" name="form1" method="post" action="carrito_finalizacion.php">
      <input type="radio" name="metodo" value="1" checked="checked" />
      <input type="radio" name="metodo" value="2" />
      <input type="radio" name="metodo" value="3" />
      <input type="submit" name="metodo" id="button" value="Pagar" />
</form>
<script>
$('input[type="radio"]').click(function(){
alert('Has hecho click en el metodo ' + $(this).val());
});
</script>


Recuerda que no puedes asignarle el mismo valor a la propiedad "id" de los objetos, esa propiedad debe contener un valor único.
Cuando le haces click a un input de tipo radio podrás ver los datos que necesites y al hacer click al submit se envía el form directamente.

Lo que tu hacias era que si se le hacia click a un radio se enviaba el form impidiendo que se vieran las cosas.

Si quieres que haga algo antes de enviar el form solo debes poner esto:
Código (javascript) [Seleccionar]
$('#form1').submit(function(){
// algo.
return false; // Detiene el envío
$('#form1').submit(); // Ahora si lo envía.
});


Saludos.

nobo

OK! Algo asi... Peeeeeeeeeeeeeeeero.. Si no me equivoco (yo de javascript ando muy pez) eso sacaria por pantalla el radio que hemos seleccionado, no?

Lo que querria hacer es eso en esencia.. Es decir que cuando le de a pagar vaya a la pagina pero que al hacer el onclick, mas que un alert. Debajo del form imprimiese con un echo o lo que sea esto:

Producto    Unidades    Precio Unidad    Precio    Acciones
Camiseta azul()    1 +      11€            11 €     Eliminar
        Total:    19€

Es decir como un resumen del carrito, sumandole pues los gastos de envio, o restandoselos. O sumando los gastos de paypal....

No se si me explico ni si se puede hacer..

De todas formas muchas gracias WHK !!