문제

I am using jquery validate to validate image upload extension. Right now I have something like:

$("#photo").rules("add", {
        accept: "jpg|jpeg|png|"
    });

The problem is that this would only accept if the extension is lower case. I could do

$("#photo").rules("add", {
        accept: "jpg|jpeg|png|JPG|JPEG|PNG"
    });

But I would like this to work even if the extension is jPG or JPg. I tried this regex:

 accept: "/\.(jpe?g|gif|png)$/i"

Don't know if my regex is wrong or if the plugin just doesnt accept regex. Any idea? Thanks!

도움이 되었습니까?

해결책

accept is only for mime types.

You need the extension rule if you want to specify by file extension.

See: http://jqueryvalidation.org/extension-method/

다른 팁

Perhaps you don't need bother jQuery to validate image extention.

If you don't care about case-sensitivity, you just need to use accept attribute of <input> to do it, just like this

<input type="file" name="pic" accept=".png, .jpg">

but this solution has some compatibility limitation, see: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#Browser_compatibility

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top