如何使用jQuery获取用户选择文件的类型?

时间:2011-10-31 12:07:07

标签: javascript jquery html forms file

如何使用jQuery获取用户选择的文件类型(在某些<input type="file" name="datafile">中),例如alert?至少它的扩展但是某种类型的分组类型如image将会受到影响。是否有任何jQuery插件?

4 个答案:

答案 0 :(得分:4)

$('input[type=file]').change(function(e){
  var file = $(this).val();
  var ext = file.split('.').pop();
  alert(ext);
});

试试这个:)

答案 1 :(得分:3)

只需为您输入一个ID并使用此

document.getElementById(ID).files[0].type

答案 2 :(得分:2)

尝试此操作以获取文件扩展名。

var fileName = "Ram.png";
alert(fileName.substring(fileName.lastIndexOf('.') + 1)); 

答案 3 :(得分:1)

为什么不使用这样的东西:

$('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());
    }
});