I try to get the upload value when the input field's change event occurs
But I get this value on Chrome,
C:\fakepath\winnie-the-pooh.jpg
So I split the \ and the the last item in the array.
jquery,
$("#uplo开发者_如何学运维ad").change(function(){
var fragment = $("#upload").val();
var array_fragment = fragment.split('\/');
alert($(array_fragment).last()[0]);
});
But I still get C:\fakepath\winnie-the-pooh.jpg instead of winnie-the-pooh.jpg on Chrome.
How can I make it worked?
the html,
<input type="file" name="image" id="upload"/>
You need to split on \, not /:
var array_fragment = fragment.split('\\');
Ideally though, you'd split on either. Fortunately, split takes a regular expression:
var array_fragment = fragment.split(/\\|\//);
That regex basically means "\ or /"—the pipe operator, |, is the "or", and the / characters at the start and end signify that a regular expression is in between.
You do not need jQuery to operate with arrays. Also, the file path may not contain a slash, e.g. on Firefox. Consider this example:
var filename = $("#upload").val().replace(/.+[\\\/]/, "");
alert(filename);
This is better than wrapping an array with jQuery just to get its last element.
you can read my post i had asked months ago:: my question
based upon your requirements you can derive something from that post!!!
加载中,请稍侯......
精彩评论