输入类型文件OnChange无法在jquery中获取文件名?

时间:2014-08-08 16:39:15

标签: javascript jquery file-io

我正在尝试从输入类型='文件'OnChange获取文件名,之后。如果给出的长度等于1。但是val()是空的。如何获取文件名?

<span class="btn btn-primary fileinput-button">
   <i class="glyphicon glyphicon-plus"></i>
   <span>@(i18n_Models_Image.AddImages + "...")</span>
   <input id="fileupload" type="file" name="files[]" accept="image/*">    
</span>

$('#fileupload').on('change', function(e) {
   console.log("hi");
   console.log($('#fileupload').val()); // is empty
});

1 个答案:

答案 0 :(得分:0)

检查是否包含了支持.on()的jquery文件。 (即jQuery 1.7或更高版本)

确保已将代码添加到document.ready或window.load中。

$(document).ready(function() {
   $('#fileupload').on('change', function(e) {
      console.log("hi");
      console.log($('#fileupload').val()); // is empty
   });
});

要获取文件名,请尝试以下操作:

var filename = $('#fileupload').val().split('\\').pop();

或者

var filename = $('#fileupload').val().replace(/C:\\fakepath\\/i, '');

工作fiddle is here