jQuery find file extension (from string)

file, jquery

Solution

How about something like this.

Test the live example: http://jsfiddle.net/6hBZU/1/

It assumes that the string will always end with the extension:

function openFile(file) {
    var extension = file.substr( (file.lastIndexOf('.') +1) );
    switch(extension) {
        case 'jpg':
        case 'png':
        case 'gif':
            alert('was jpg png gif');  // There's was a typo in the example where
        break;                         // the alert ended with pdf instead of gif.
        case 'zip':
        case 'rar':
            alert('was zip rar');
        break;
        case 'pdf':
            alert('was pdf');
        break;
        default:
            alert('who knows');
    }
};

openFile("somestring.png");

EDIT: I mistakenly deleted part of the string in `openFile("somestring.png");`. Corrected. Had it in the Live Example, though.

Problem

I was wondering if it was possible for jQuery to find a file extension based on a returned string? A filename (string) will be passed to a function (openFile) and I wanted that function to do different things based on what file has been passed through, it could be image files or pdf files. ``` function openFile(file) { //if .jpg/.gif/.png do something //if .zip/.rar do something else //if .pdf do something else }; ``` I've been looking for something that will find the file's extension but I can't seem to find anything.

Original source