Javascript 使用jquery手动验证表单。不引人注目的验证
我目前正在开发一个带有计算总数的表单。例如,字段C中的值将由输入到字段A和字段B中的输入项生成Javascript 使用jquery手动验证表单。不引人注目的验证,javascript,jquery,asp.net-mvc,forms,validation,Javascript,Jquery,Asp.net Mvc,Forms,Validation,我目前正在开发一个带有计算总数的表单。例如,字段C中的值将由输入到字段A和字段B中的输入项生成 Field A - 10, Field B - 20 Field C - 30 字段C经过验证小于某个值。我正在使用MVC中的DataAnnotations库,并且我已经连接了jquery.unobtrusive库,以便在客户机上应用验证。我还提取了以下代码,为每个出现错误的字段显示一个错误图标 $(function () { $('form').each(function () {
Field A - 10,
Field B - 20
Field C - 30
字段C经过验证小于某个值。我正在使用MVC中的DataAnnotations库,并且我已经连接了jquery.unobtrusive库,以便在客户机上应用验证。我还提取了以下代码,为每个出现错误的字段显示一个错误图标
$(function () {
$('form').each(function () {
var validator = $(this).data('validator');
validator.settings.showErrors = onValidated;
});
function onValidated(errorMap, errorList) {
$.each(errorList, function () {
onError($(this.element), this.message);
});
if (this.settings.success) {
$.each(this.successList, function () {
onSuccess($(this));
});
}
}
function onSuccess(inputElement) {
var fieldId = getElementFieldName(inputElement);
var error = $("#" + fieldId + "Error").hide();
error.attr('title', '');
}
function onError(inputElement, message) {
var fieldId = getElementFieldName(inputElement);
var error = $("#" + fieldId + "Error").show();
error.attr('title', message);
}
这将显示或隐藏所选元素的图标-因此,如果我在字段A中输入了不正确的值,它将相应地验证它,并显示带有错误消息的图标
我不确定这样做的最佳方式,但我认为在输入后验证所有字段可能是最好的主意-然后如果字段A被更新,那么字段C被检查
我也在寻找一个点,在这个点上我可以连接该方法来检查任何错误-目前我可以通过查找任何图标来执行此操作-但是我看不到一个好的点来连接它,以便它运行一次而不是每个字段 这将完成所有这些事情,实现起来有点容易。你不需要为此编写自定义jQuery验证。只需要列上的属性。这也将进行jQuery验证。嗨,Parth-抱歉,我不理解你关于“列上的属性”的评论。你能帮我扩展一下吗?默认的dataannotations(entityframwork)对验证有一些限制。所以我使用ExpressiveAnnotations。它允许任何值(实体列)“>”(大于)