用js來獲取上傳的文件名純粹是為了美化而用
更新時間:2013年10月23日 16:56:28 作者:
用js來獲取上傳的文件名其實(shí)純粹是為了美化,友好。但是,可不是網(wǎng)上流傳的那樣,用 path.substring()的方法,下面有個不錯的示例,感興趣的朋友可以參考下
為啥要用js來獲取上傳的文件名呢?其實(shí)純粹是為了美化,友好,
但是,可不是網(wǎng)上流傳的那樣,用 path.substring(path.lastIndexOf('/')+1) ;
這個樣在工作的時候會出現(xiàn)不少問題。
比如,firefox的input表單的value值默認(rèn)就可以獲取到文件名,而ie 則顯示文件路徑。
所以要區(qū)別對待,在firefox下 lastIndexOf('/')得到的是-1,而在ie下,目錄顯示的又是反斜杠,\,當(dāng)然在Linux
下,其他瀏覽器獲取到的又是正斜杠 / ( 暫時未證明有Linux下有瀏覽器file獲取到的值會是全路徑);
得用兩次判斷:
function getFileName(path){
var pos1 = path.lastIndexOf('/');
var pos2 = path.lastIndexOf('\\');
var pos = Math.max(pos1, pos2)
if( pos<0 )
return path;
else
return path.substring(pos+1);
}
但是,可不是網(wǎng)上流傳的那樣,用 path.substring(path.lastIndexOf('/')+1) ;
這個樣在工作的時候會出現(xiàn)不少問題。
比如,firefox的input表單的value值默認(rèn)就可以獲取到文件名,而ie 則顯示文件路徑。
所以要區(qū)別對待,在firefox下 lastIndexOf('/')得到的是-1,而在ie下,目錄顯示的又是反斜杠,\,當(dāng)然在Linux
下,其他瀏覽器獲取到的又是正斜杠 / ( 暫時未證明有Linux下有瀏覽器file獲取到的值會是全路徑);

得用兩次判斷:
復(fù)制代碼 代碼如下:
function getFileName(path){
var pos1 = path.lastIndexOf('/');
var pos2 = path.lastIndexOf('\\');
var pos = Math.max(pos1, pos2)
if( pos<0 )
return path;
else
return path.substring(pos+1);
}
您可能感興趣的文章:
- Jsp頁面實(shí)現(xiàn)文件上傳下載類代碼
- 圖片上傳之前檢查大小、尺寸、格式并預(yù)覽的js代碼
- JS清空上傳控件input(type="file")的值的代碼
- 圖片上傳即時顯示縮略圖的js代碼
- 關(guān)于js拖拽上傳 [一個拖拽上傳修改頭像的流程]
- jsp中實(shí)現(xiàn)上傳圖片即時顯示效果功能
- 多個表單中如何獲得這個文件上傳的網(wǎng)址實(shí)現(xiàn)js代碼
- js實(shí)現(xiàn)上傳圖片之上傳前預(yù)覽圖片
- Servlet+Jsp實(shí)現(xiàn)圖片或文件的上傳功能具體思路及代碼
- js 實(shí)現(xiàn) input type="file" 文件上傳示例代碼
- JS簡單實(shí)現(xiàn)文件上傳實(shí)例代碼(無需插件)
- 客戶端js判斷文件類型和文件大小即限制上傳大小
- javascript拖拽上傳類庫DropzoneJS使用方法
- js動態(tài)創(chuàng)建上傳表單通過iframe模擬Ajax實(shí)現(xiàn)無刷新
- 一個簡單的jQuery插件ajaxfileupload.js實(shí)現(xiàn)ajax上傳文件例子
- 使用ajaxfileupload.js實(shí)現(xiàn)ajax上傳文件php版
- 上傳圖片預(yù)覽JS腳本 Input file圖片預(yù)覽的實(shí)現(xiàn)示例
- JS模擬并美化的表單控件完整實(shí)例
- js實(shí)現(xiàn)文件上傳表單域美化特效
相關(guān)文章
javascript實(shí)現(xiàn)的動態(tài)文字變換
javascript實(shí)現(xiàn)的動態(tài)文字變換...2007-07-07