手动触发一个字段的客户端验证

时间:2014-04-07 09:21:03

标签: javascript asp.net-mvc client-side-validation

我有另一个按钮来替换默认文件控件,这样我就可以使用样式按钮并执行一些其他操作。

因为我使用其他按钮上传文件,所以我的客户端验证方法没有被调用。

我目前正在执行此操作来验证我的字段:

if ($(document).has('input[type="file"]')) {
window.setInterval(function () {
    $("#form").valid();
}, 1000);

}

这当然会每秒验证所有字段,我只想验证我选择的文件。

我的验证方法:

$.validator.addMethod("fileextension", function (value, element, allowedextensions) {
var arrayAllowedExtensions = allowedextensions.split(',');
var fileExtension = value.split('.').pop();
$.each(arrayAllowedExtensions, function(extension) {
    if (extension == fileExtension) {
        return true;
    }
});
return false;

});

所以我的问题是可以只验证一个字段吗? 一段代码非常受欢迎!

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以在jquery选择器的结果上调用valid()方法,该方法可用于将验证限制为单个字段。

您可以根据字段的id属性编写以下内容:

$('#yourFieldId').valid();

您还可以使用字段的name属性:

$('input[name="yourFieldName"]').valid();

或限制您要验证的字段/字段而不是整个表单的任何其他选择器。

希望它有所帮助!