我正在編寫一個可以讓用戶導入圖片的應用程序。我正在運行windows,因此當用戶選擇圖片時返回的文件路徑具有反斜線,這是我認爲導致javascript失敗時,我將路徑傳遞給我的導入方法。 我得到一個簡單的HTML文件輸入文件路徑,並使用帶有一個onclick調用我的javascript提交按鈕:將URI中的反斜槓更改爲使用javascript進行正斜槓
<input type="file" id="photo-to-import" />
<input type="button" value="Submit" onclick="console.log($('#photo-to-import').val().replace('/\\/g','/'))"/>
的console.log通常在函數調用會去,我已經改變了它調試。如果我在一個文件路徑的圖片硬編碼,並經過和手動更改斜線,它進口的圖片,例如,我會複製/粘貼的路徑:
C:\Users\Name\Desktop\desktop app\images\imageName.png
進入功能和更改斜線我結束了:
<input type="button" value="Submit" onclick="onPhotoURISuccess('C:/Users/Name/Desktop/desktop app/images/imageName.png')"/>
和這個偉大的工程。我試過
.replace('\\\\', '/')
.replace('\\', '/')
...
並且總是得到完全相同的輸出,該字符串每次都不變。
'.replace(/ \\/g,'/')'你可能應該讓它取代全局。 – adeneo
你是否分配了返回結果? someStr = someStr.replace('\\','/'); – veritasetratio