addclass和removeclass

addclass和removeclass

我正在处理一个PHP-Jquery-Ajax提交信息表单,我想使用addclass和removeclass jquery方法,但是我无法使其按需运行,所以我的问题是:我该如何修复代码下面,以便根据用户输入添加CSS?

addclass和removeclass在verificaForm函数中,我在其中验证输入字段,在这种情况下,我仅向您显示两个字段验证,但是还有更多...我也知道那里有一个库(validate.js)可以帮助验证用户的输入,但是在这种特定情况下,我必须坐下来看一下这段代码。

这是我的js代码,在此先感谢:

$(document).ready(function () {

    $('#ID_formulario').on('submit', function (e) {

        e.preventDefault();

        var nombre = $('input#ID_nombre').val().trim();
        var email = $('input#ID_email').val().trim();

        if (validaForm(nombre, email)) {

            $('#result').html("<b>resolviendo peticion...</b>");

            var url = $(this).attr('action');
            var data = $(this).serializeArray();
            var type = $(this).attr('method');

            //...more code goes here ... it works fine ...
        }

    });
});

function validaForm(nombre, email) {

    if ((nombre == '') || nombre.replace(/s+/, '') == '') {
        alert("Favor especificar nombre");
        nombre.addClass('hightlight');
        return false;
    } else {
        else nombre.removeClass('hightlight');
    }

    if (nombre.length < 4) {
        alert('El valor del campo es muy corto');
        return false;
    }
    if ((email == '') || email.replace(/s+/, '') == '') {
        alert("Favor especificar correo");
        return false;
    }
    return true;
}

最佳答案

您应该将元素而不是值传递给函数。然后,您可以在函数中获取值。像这样:

 var nombre = $('input#ID_nombre');
 var email = $('input#ID_email');

    if(validaForm(nombre, email))

    ....


   function validaForm(nombre,email){

   var nombre_value = nombre.val().trim();
   var email_value = email.val().trim();
   .......

09-11 17:38