Pregunta

Esta podría ser una pregunta simple, pero solo estoy respondiendo esto, así que por favor sea amable :)

Utilizando la validación JQuery, si quiero que un cuadro de texto sea un campo obligatorio, simplemente puedo agregar una clase css de "requerido" al elemento y la validación lo recoge.

Si quiero una regla un poco más compleja, es decir. requerido con una longitud mínima, ¿puedo usar un nombre de clase css personalizado como clave para una regla, o tengo que escribir una regla separada para cada cuadro de texto en el que quiero una longitud mínima? La documentación indica que la clave para una regla personalizada es el atributo Nombre de un elemento.

Gracias de antemano, Nick

EDITAR:

He intentado agregar una regla y luego agrego el nombre de la regla a los elementos como una clase, pero se ignora por completo.

En mi script:

  $("#popupWindow #frmWidgetUpdate").validate({
    rules: {
      minLength3: {
        required: true,
        minlength: 3
      }
    },
    errorClass: "field-validation-error",
    highlight: function(element, errorClass) {
      $(element).addClass("input-validation-error");
    },
    unhighlight: function(element, errorClass) {
      $(element).removeClass("input-validation-error");
    },
    errorPlacement: function(error, element) {
      error.appendTo(element.parent().find(".errorLabel"));
    }
  });

En mi html:

<label>Widget Title:<span class="errorLabel"></span><br />
  <%=Html.TextBox("WidgetTitle", _
                  Model.WidgetTitle, _
                  New With {.class = "param minLength3", _
                            .style = "width:100%;", _
                            .maxlength = "50"})%>
</label>
¿Fue útil?

Solución

Simplemente use varios nombres de clase:

<input class="required numeric mySpecialRule" ...
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top