Я хочу выполнить проверку с помощью плагина jQuery Validation для type="file"
input
type="file"
. Я хочу ограничить форматы файлов doc,pdf,rtf, and docx
.
Вот мой код:
$("#contact-form").validate({
onfocusout: function(e) {
this.element(e);
},
rules:{
resume:{
required:true,
extension: "docx|rtf|doc|pdf"
}
},
resume:{
required:"input type is required",
extension:"select valied input file format"
}
});
Вы никогда не объясняли проблему, связанную с вашим кодом:
$("#contact-form").validate({
onfocusout: function(e) {
this.element(e);
},
rules:{
resume:{
required:true,
extension: "docx|rtf|doc|pdf"
}
},
resume:{
required:"input type is required",
extension:"select valied input file format"
}
});
Однако вы отправляете сообщения без использования messages
. Это ошибка, которая, вероятно, нарушит плагин, или, по крайней мере, ваши пользовательские сообщения об ошибках будут проигнорированы.
Ваш код должен выглядеть так...
$("#contact-form").validate({
onfocusout: function(e) { // this option is not needed
this.element(e); // this is the default behavior
},
rules:{
resume:{
required:true,
extension: "docx|rtf|doc|pdf"
}
},
messages: { // <-- you must declare messages inside of "messages" option
resume:{
required:"input type is required",
extension:"select valid input file format"
}
}
});
Рабочая DEMO: http://jsfiddle.net/ZqxR2/
Если вы не хотите создавать правило
просто используйте атрибут accept в input, как показано ниже
<input type="file" accept="doc,pdf,rtf,docx"/>