jquery.validate.js - 验证文件名

时间:2012-12-01 00:30:04

标签: jquery jquery-plugins jquery-validate

根据jquery.validate插件的文档:http://docs.jquery.com/Plugins/Validation/Methods/accept#extension

我可以检查文件的文件扩展名以验证文件扩展名,如下所示:

$("#myform").validate({
  rules: {
    field: {
      required: true,
      accept: "xls|csv"
    }
  }
});

然而,这似乎对该字段没有影响,我仍然可以将任何文件添加到我喜欢的字段中。 “必需”验证确实适用于该字段,并且我在验证代码工作的页面上有其他字段 - 但是“接受”规则尚未应用。

JSFiddle显示问题:http://jsfiddle.net/SCgRr

2 个答案:

答案 0 :(得分:2)

好的,因此文档已过期,您需要包含additional-methods.js lib以及jquery.validate

添加了缺少的lib,一切都很好。

答案 1 :(得分:0)

我有同样的问题 - 特别是"xls|csv" - 即使在包含additional-methods.js

之后

请注意这一新段http://docs.jquery.com/Plugins/Validation/Methods/accept#extension

  

注意:此方法用于查看文件名,特别是   文件扩展名。这种行为现在可用作“扩展”   additional-methods.js中的方法,与此“accept”方法相同   本身。

accept现在指定mimetype,extension特定于文件扩展名。像'pdf'这样的扩展工作 - 因为扩展名和mimetype是相同的。但是xls和csv是文本,需要根据文件扩展名进行评估。

根据为我工作的新文档,将accept更改为extension

完整代码:

$("#myform").validate({
  rules: {
    field: {
      required: true,
      extension: "xls|csv"
    }
  }
});