根据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
答案 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"
}
}
});