Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/05/2013, 10:41
cristaken
 
Fecha de Ingreso: septiembre-2010
Mensajes: 75
Antigüedad: 14 años, 2 meses
Puntos: 1
Como validar varios input de tipo number con jQuery?

Hola Amigos,

Tengo un pequeño problema, ahora mismo quiero hacer un pequeño formulario con idealforms, y la idea es que las personas al ingresar al mismo digite una cantidad de suscripciones que quieran comprar, tengo varias opciones del mismo con el mismo nombre en este caso "cantidades[]", lo que quiero es que se valide si al menos una fue llenada con un numero. ¿Cómo podría hacer esto? Les agradezco toda la ayuda posible. :D

Nota: Ya tengo todos los archivos requeridos (jQuery y idealforms.js) asociados a este form.

Formulario:
Código:
<form id="my-form">                           
                            <section name="Paso 1">
                                <h1>Formulario de Inscripci&oacute;n XV Congreso Colombiano de Petr&oacute;leo y Gas 2013</h1>
                                <p>Por favor digite la cantidad de entradas que necesita de acuerdo a su tipo de inscripci&oacute;n.<br/> Recuerde que el rol que especifique sera sometido a verificaci&oacute;n por parte de ACIPET.</p>
                                <div><hr/></div> 
                                <table width="100%" id="seleccionPrecio" cellspacing="2">
                                    <tr>
                                        <td><label>Tipo de Inscripci&oacute;n</label></td>
                                        <td><label>Hasta 30 de Julio/2013</label></td>
                                        <td><label>Hasta 30 de Septiembre/2013</label></td>
                                        <td><label>Despu&eacute;s del 30 de Septiembre/2013</label></td>
                                        <td><label>Cantidad</label></td>
                                    </tr>            
                                    <tr>
                                        <td>Participantes</td>
                                        <td>1.200.000</td>
                                        <td>1.500.000</td>
                                        <td>1.900.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>Afiliados ACIPET</td>
                                        <td>700.000</td>
                                        <td>900.000</td>
                                        <td>1.100.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>Docentes Universitarios</td>
                                        <td>800.000</td>
                                        <td>1.000.000</td>
                                        <td>1.300.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>CO Autores de Trabajos</td>
                                        <td>800.000</td>
                                        <td>1.000.000</td>
                                        <td>1.300.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>Presentadores de Trabajos</td>
                                        <td>-</td>
                                        <td>-</td>
                                        <td>-</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>Estudiantes</td>
                                        <td>480.000</td>
                                        <td>600.000</td>
                                        <td>760.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                    <tr>
                                        <td>Estudiantes Afiliados a ACIPET</td>
                                        <td>240.000</td>
                                        <td>300.000</td>
                                        <td>380.000</td>
                                        <td><input type="number" id="cantidad" style="width: 80px;" name="cantidades[]" /></td>
                                    </tr>
                                </table>                               
                                <div>
                                    <button type="button" id="siguiente">Siguiente</button>
                                </div>
                            </section>
                            <section name="Paso 2">


                            </section>
                            <section name="Paso 3">
                                <div><hr/></div> 
                                <div>
                                    <button type="submit">Siguiente</button>
                                </div>
                            </section>


                        </form>
Y jQuery:

var options = {
onFail: function() {
alert($myform.getInvalid().length + ' campos invalidos.')
},
inputs: {
'cantidades[]': {
filters: 'min',
data: {min: 1},
errors: {min: 'Ingresa al menos <strong>1 Tipo de inscripcion</strong>.'}
},
'password': {
filters: 'required pass',
},
'username': {
filters: 'required username',
data: {
//ajax: { url:'validate.php' }
}
},
'file': {
filters: 'extension',
data: {extension: ['jpg']}
},
'comments': {
filters: 'min max',
data: {min: 50, max: 200}
},
'states': {
filters: 'exclude',
data: {exclude: ['default']},
errors: {
exclude: 'Select a State.'
}
},
'langs[]': {
filters: 'min max',
data: {min: 2, max: 3},
errors: {
min: 'Check at least <strong>2</strong> options.',
max: 'No more than <strong>3</strong> options allowed.'
}
}
}
};

var $myform = $('#my-form').idealforms(options).data('idealforms');

$myform.focusFirst();

$('#siguiente').click(function() {
$myform.nextTab();
});