Reputation: 18647
From what I've ready you should be able to use the 'value' property of a file input field to get the currently set path of that field. But when I do this:
$('#fileinput').value()
I get 'undefined'. The ID of the field is set to "fileinput" I'm sure. Does anyone have any thoughts on why this might not be working for me?
And by the way, this works:
var d = document.getElementById('AttachmentFile');
alert(d.value);
So I guess this has something to do with the way jQuery works that I don't fully understand.
Thanks!
Upvotes: 31
Views: 167074
Reputation: 1
I've tried this and it works:
yourelement.next().val();
yourelement could be:
$('#elementIdName').next().val();
good luck!
Upvotes: 0
Reputation: 19
Jquery works differently in IE and other browsers. You can access the last file name by using
alert($('input').attr('value'));
In IE the above alert will give the complete path but in other browsers it will give only the file name.
Upvotes: 1
Reputation: 271
In Chrome 8 the path is always 'C:\fakepath\' with the correct file name.
Upvotes: 27
Reputation: 61
its not .val() if you want to get file /home/user/default.png it will get with .val() just default.png
Upvotes: 6
Reputation: 191058
I don't think there is any real legitimate way to access this via the DOM. It would be a security risk that browsers have of late locked down on to prevent drive-by uploads.
Upvotes: 3