【发布时间】:2015-03-19 12:28:39
【问题描述】:
我正在处理一个 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;
}
【问题讨论】:
-
语法错误,
else放错地方了? -
您将 var nombre 与 .val().trim() 一起使用。您需要将类添加到输入中,而不是添加到输入的 val() 中。如果您创建另一个变量,例如 var nombre =('input#ID_nombre');它会起作用的。 jsfiddle.net/jnfnLmqg
标签: javascript php jquery ajax