To get the file name, you can:
var filename = $this[0].files ? $this[0].files[0].name : $this[0].value.match(/[^\/\\]*$/)[0];
or simply:
$this[0].value.match(/[^\/\\]*$/)[0];
Full code:
$(function()) { var fileType = ['txt' , 'csv' ]; $('.input_file').find('input [type = "file" ]').live('change', function (e)) { $this = $(this) var ext = $this.val() === " " ? " " : this.value.match(/\.(.+)$/)[1]; if ($this.val()) { var filename = $this[0].files ? $this[0].files[0].name : $this[0].value.match(/[^\/\\]*$/)[0]; $this.parent().find('label').text.($this[0].files[0].name); } } }
source share