Envío de un formulario a una ventana Shadowbox

Esta tarde me he encontrado con uno de esos problemas que cuesta resolver. Necesitaba enviar todos los campos de un formulario a otra página, pero esta página debía abrirse en un shadowbox.

Me he llevado un buen rato buscando hasta que he dado con una solución. El proceso es sencillo: mediante jQuery obtenemos el valor de cada campo del formulario en cuestión y «montamos» la url pasando como parámetros dichos valores.

Finalmente el código quedaría de la siguiente manera:

<script type=»text/javascript»>
$(document).ready(function() {
Shadowbox.init({skipSetup:true});
});
function fnEnviarBusqueda(){
var fld = [];
$(‘input’,$(‘#prueba’)).not(‘[type=submit]’).each(function(){ fld.push(this.name+’=’+$(this).val().replace(/^#/,»));
});
var url = $(‘#prueba’).attr(‘action’)+’?’+fld.join(‘&’);
Shadowbox.open({player:’iframe’,content:url,width:500,height:500});
$(‘#prueba’)[0].reset();
return false;}

</script>

<form method=’get’ action=’formulario_busquedas.aspx’ id=»prueba» name=»prueba»>
<input type=’text’ name=’campo1′ value=’valor1′ />
<input type=’text’ name=’campo2′ value=’valor2′ />
<input type=’text’ name=’campo3′ value=’valor3′ />
<input type=’submit’ name=’submit’ value=’Enviar’ />
</form>

Un pequeño código que nos soluciona la papeleta.

Deja una respuesta