用js來獲取上傳的文件名純粹是為了美化而用
更新時(shí)間:2013年10月23日 16:56:28 作者:
用js來獲取上傳的文件名其實(shí)純粹是為了美化,友好。但是,可不是網(wǎng)上流傳的那樣,用 path.substring()的方法,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下
為啥要用js來獲取上傳的文件名呢?其實(shí)純粹是為了美化,友好,
但是,可不是網(wǎng)上流傳的那樣,用 path.substring(path.lastIndexOf('/')+1) ;
這個(gè)樣在工作的時(shí)候會(huì)出現(xiàn)不少問題。
比如,firefox的input表單的value值默認(rèn)就可以獲取到文件名,而ie 則顯示文件路徑。
所以要區(qū)別對(duì)待,在firefox下 lastIndexOf('/')得到的是-1,而在ie下,目錄顯示的又是反斜杠,\,當(dāng)然在Linux
下,其他瀏覽器獲取到的又是正斜杠 / ( 暫時(shí)未證明有Linux下有瀏覽器file獲取到的值會(huì)是全路徑);
得用兩次判斷:
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) ;
這個(gè)樣在工作的時(shí)候會(huì)出現(xiàn)不少問題。
比如,firefox的input表單的value值默認(rèn)就可以獲取到文件名,而ie 則顯示文件路徑。
所以要區(qū)別對(duì)待,在firefox下 lastIndexOf('/')得到的是-1,而在ie下,目錄顯示的又是反斜杠,\,當(dāng)然在Linux
下,其他瀏覽器獲取到的又是正斜杠 / ( 暫時(shí)未證明有Linux下有瀏覽器file獲取到的值會(huì)是全路徑);
得用兩次判斷:
復(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頁(yè)面實(shí)現(xiàn)文件上傳下載類代碼
- 圖片上傳之前檢查大小、尺寸、格式并預(yù)覽的js代碼
- JS清空上傳控件input(type="file")的值的代碼
- 圖片上傳即時(shí)顯示縮略圖的js代碼
- 關(guān)于js拖拽上傳 [一個(gè)拖拽上傳修改頭像的流程]
- jsp中實(shí)現(xiàn)上傳圖片即時(shí)顯示效果功能
- 多個(gè)表單中如何獲得這個(gè)文件上傳的網(wǎng)址實(shí)現(xiàn)js代碼
- js實(shí)現(xiàn)上傳圖片之上傳前預(yù)覽圖片
- Servlet+Jsp實(shí)現(xiàn)圖片或文件的上傳功能具體思路及代碼
- js 實(shí)現(xiàn) input type="file" 文件上傳示例代碼
- JS簡(jiǎn)單實(shí)現(xiàn)文件上傳實(shí)例代碼(無需插件)
- 客戶端js判斷文件類型和文件大小即限制上傳大小
- javascript拖拽上傳類庫(kù)DropzoneJS使用方法
- js動(dòng)態(tài)創(chuàng)建上傳表單通過iframe模擬Ajax實(shí)現(xiàn)無刷新
- 一個(gè)簡(jiǎ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 canvas實(shí)現(xiàn)雨滴特效
這篇文章主要為大家詳細(xì)介紹了JavaScript canvas實(shí)現(xiàn)雨滴特效,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-01-01
javascript 特性檢測(cè)并非瀏覽器檢測(cè)
NCZ在他的同名博客《Feature detection is not browser detection》中,講述了一直以來前端開發(fā)中的一個(gè)熱門技術(shù)——檢測(cè)用戶的瀏覽器平臺(tái),并詳細(xì)地?cái)⒄f歷史發(fā)展以及各種辦法的優(yōu)缺點(diǎn)。2010-01-01
js實(shí)現(xiàn)根據(jù)文件url批量壓縮下載成zip包
本文主要介紹了js實(shí)現(xiàn)根據(jù)文件url批量壓縮下載成zip包,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
簡(jiǎn)介EasyUI datagrid editor combogrid搜索框的實(shí)現(xiàn)
這篇文章主要介紹了EasyUI datagrid editor combogrid搜索框的實(shí)現(xiàn),涉及到EasyUI中combogrid的使用方法的相關(guān)知識(shí),非常具有參考價(jià)值,需要的朋友可以參考下2016-04-04
javascript 獲取radio的value的函數(shù) [已測(cè)]
javascript 獲取radio的value的函數(shù) 如果與asp,php等后臺(tái)語(yǔ)言結(jié)合時(shí),一般用不到,但在純js環(huán)境下是必須的。2009-06-06
Javascript農(nóng)歷與公歷相互轉(zhuǎn)換的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)硪黄狫avascript農(nóng)歷與公歷相互轉(zhuǎn)換的簡(jiǎn)單實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10

