Как получить тип выбранного пользователем файла с помощью jQuery? - PullRequest
1 голос
/ 31 октября 2011

Как получить тип файла, который пользователь выбрал (в некоторых <input type="file" name="datafile">) с помощью jQuery и, например, alert это? По крайней мере, его расширение, но некоторые сгруппированные типы, такие как image, будут решительными. Есть ли для этого плагин jQuery?

Ответы [ 4 ]

4 голосов
/ 31 октября 2011
$('input[type=file]').change(function(e){
  var file = $(this).val();
  var ext = file.split('.').pop();
  alert(ext);
});

Попробуйте это:)

3 голосов
/ 31 октября 2011

Просто введите идентификатор для ввода и используйте это

document.getElementById(ID).files[0].type
2 голосов
/ 31 октября 2011

Попробуйте получить расширение вашего файла.

var fileName = "Ram.png";
alert(fileName.substring(fileName.lastIndexOf('.') + 1)); 
1 голос
/ 31 октября 2011

почему бы вам не использовать что-то вроде этого:

$('input:file').change(function () {
    var ext = this.value.split('.').pop();
    console.log(ext);
});

если вы хотите использовать «множественное» поле, вы можете использовать что-то вроде этого:

$('input:file').change(function () {
    var $this = $(this);
    if ( $this.prop('multiple') ) {
        for ( var i=0; i<this.files.length; i++) { 
            var ext = this.files[i].fileName.split('.').pop();
            // this.files[i].extension = ext;  // usefull for future use
            console.log(ext);
        }
    }
    else {        
        console.log(this.value.split('.').pop());
    }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...