Foros del Web » Programando para Internet » Jquery »

Validar campos con jquery validate

Estas en el tema de Validar campos con jquery validate en el foro de Jquery en Foros del Web. Hola a todos, primero que nada soy nuevo en esto de foros y plantear preguntas asi que disculpen si no lo hago con toda la ...
  #1 (permalink)  
Antiguo 01/11/2015, 23:45
 
Fecha de Ingreso: noviembre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Validar campos con jquery validate

Hola a todos, primero que nada soy nuevo en esto de foros y plantear preguntas asi que disculpen si no lo hago con toda la exactitud que requiere. Resulta que necesito usar jquery validate para validar campos de mi formulario pero tengo la siguiente particularidad, no tengo los campos definidos dentro de mi formulario y ahora explico, En mi pagina utilizo un pluggin de DropZone para el manejo de ficheros, este pluggin requiere de un formulario asi que no podia definirlo dentro de mi formulario general. por problemas de decoracion de la pagina pude resolver ese tema definiendo normalmente mi DropZone y todos los otros campos asociados al otro formulario los amarre a traves del atributo form. Puse mi formulario en otro lugar y amarre incluso hasta los botones SUBMIT y todo me ha funcionado al 100%. Ahora quiero utilizar jquery validate tal y como lo he usado antes pero no me funciona. Lo hago de esta forma
$('#personaForm').validate({
ignore: {
},
rules: {
numeroIdentificacion : {required: true}
},
messages: {
numeroIdentificacion : {required: i18n.common.required}
} });
pero al no estar directamente dentro del html del personaForm no le asigna las validaciones y no me funciona, inclusive a este campo a parte de la validacion REQUIRED le asigno otra con una funcion pero nada, el codigo es el siguiente.
$.validator.addMethod("validar_numero_identificaci on", function (value, element) {

var res = $.ajax('validar_numero_identificacion.do', {
type: 'GET',
dataType: 'json',
data: {numero_identificacion: $('#numeroIdentificacion').val()},
success: function (data) {
return data;
}
})
return res;
}, i18n.persona.persona.numero_identificacion);
$('#numeroIdentificacion').rules('add', 'validar_numero_identificacion');


No debe ser la forma en la que lo utilizo porque es igual a como me funciona en otros formularios, la unica diferencia es la que planteo anteriormente. Disculpen que me extendiera tanto y espero que alguien pueda ayudarme con este problema. Saludos
  #2 (permalink)  
Antiguo 04/11/2015, 06:02
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 4 meses
Puntos: 18
Respuesta: Validar campos con jquery validate

Hola.

Habría que ver el codigo html que te genera para poder hacer un selector valido.

Saludos
  #3 (permalink)  
Antiguo 04/11/2015, 08:22
 
Fecha de Ingreso: noviembre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Validar campos con jquery validate

Hola sintel_1, gracias por tomarte el momento para dejar tu comentario. El codigo que me genera es bastante grande porqeu es un formulario grande,aunque solo me interesa validar ese campo. Me genera mi formulario sin componentes de la siguiente forma:

<form action="registrar_persona.do" id="personaForm" name="personaForm" method="post" class="form-vertical"
enctype="multipart/form-data">

</form>

y el resto de las etiquetas html estan fuera y son de esta forma:
<div class="row">
<div class="col-sm-4 col-md-4 col-lg-4">
<div class="form-group">
<label class="control-label" for="colorDeOjos">Color de Ojos</label>
<select class="sel col-sm-12 col-md-12 col-lg-12" id="colorDeOjos" name="colorDeOjos.id_color_ojos"
form="personaForm">
<!---->
</select>
</div>
</div>
<div class="col-sm-4 col-md-4 col-lg-4">
<div class="form-group">
<label class="control-label" for="colorDePelo">Color de Pelo</label>
<select class="sel col-sm-12 col-md-12 col-lg-12" id="colorDePelo" name="colorDePelo.id_color_pelo"
form="personaForm">
<!---->
</select>
</div>
</div>
<div class="col-sm-4 col-md-4 col-lg-4">
<div class="form-group">
<label class="control-label" for="colorDePiel">Color de Piel</label>
<select class="sel col-sm-12 col-md-12 col-lg-12" id="colorDePiel" name="colorDePiel.id_color_piel"
form="personaForm">
<!---->
</select>
</div>
</div>
</div>

donde establezco la relacion con el formulario a travez del atributo FORM. Saludos y te agradeceria alguna sugerencia.
  #4 (permalink)  
Antiguo 04/11/2015, 08:24
 
Fecha de Ingreso: noviembre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Validar campos con jquery validate

disculpa la respuesta anterior, no inclui el codigo del campo que me interesa validar, es el siguiente.
<div class="col-sm-4 col-md-4 col-lg-4">
<div class="form-group ">
<label class="control-label" for="numeroIdentificacion">Nro Ident.</label>
<input class="form-control" name="numeroIdentificacion" id="numeroIdentificacion"
value="" type="text" form="personaForm">
</div>
</div>
saludos.
  #5 (permalink)  
Antiguo 04/11/2015, 12:06
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 4 meses
Puntos: 18
Respuesta: Validar campos con jquery validate

Hola.

No se si te he entendido, tienes un formulario y varios campos select que estan fuera de la etiqueta </form> ?

Si es asi yo haria lo siguiente, copiar la capa de los select y meterla antes de la etiqueta de cierre del form, para que asi el validate te los reconozca.

algo asi:

$(document).ready(function(){
$(function() {
$copia=$(".row").clone();
$(".row").remove();
$("#personaForm").prepend($copia);

// ahora aplicamos el validate

$('#personaForm').validate({
ignore: {
},
rules: {
numeroIdentificacion : {required: true}
},
messages: {
numeroIdentificacion : {required: i18n.common.required}
} });
});

});

No se si luego te encajara con el diseño, espero se entienda la idea.
Saludos.
  #6 (permalink)  
Antiguo 04/11/2015, 13:52
 
Fecha de Ingreso: noviembre-2015
Mensajes: 6
Antigüedad: 8 años, 6 meses
Puntos: 0
Respuesta: Validar campos con jquery validate

Si estoy entendiendo bien tu idea me dices que deben aparecer primero los campos y luego definir la etiqueta FORM, bueno probe poniendo intencionalmente la etiqueta al final de la pagina y sigue sin funcionar, luego probe con tu codigo y si me afecta la vista porque tengo todos los camps repartidos en tab dentro de un .tabbable de bootstrap. En el caso de tu codigo no me salen los componentes porque al sacarlos de los tabuladores me quedan ocultos, no se porque sucedera eso. Habra alguna forma de asociarle la validacion sin que este dentro del formulario? puedo hacerlo manualmente, de hecho lo tengo funcionando ahroa manualmente, pero cuando tenga varios campos en ese caso se hara un poco pesado y tedioso validarlo todo. saludos y agradezco tu preocupacion por mi problema.
  #7 (permalink)  
Antiguo 05/11/2015, 02:59
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 4 meses
Puntos: 18
Respuesta: Validar campos con jquery validate

Hola.

Las especificaciones son claras, en un documento html unicamente puede haber un
<form></form>
dices que si pones los campos dentro de esas etiquetas no te funciona el validate,
seguramente el plugin dropzone este controlando el submit del formulario, revisa que es exactamente ese plugin para ver si puedes meterle una funcion donde validate haga su trabajo antes de hacer el submit.

Tambien revisa la consola no sea que tengas algun error que este fastidiando el funcionamiento.
Con los datos que das no te entiendo bien el problema, hoy estoy muy espeso :)

saludos.

Etiquetas: campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:39.