我知道这很荒谬,但我坚持了下来
我在asp经典
中使用了fileupload的文件路径文件路径是 C:\ FakePath \ 3.jpg
我想在变量中检索它,这样它只会给我 3.jpg
substring()
和substr()
不包含3我不知道为什么
logopath = C:\FakePath\3.jpg;
logopath = logopath.substring(10);
答案 0 :(得分:2)
试试这个
'C:\\FakePath\\3.jpg'.split('\\').pop();
//“3.jpg”
或(正则表达式)
'C:\\FakePath\\3.jpg'.replace(/^.*\\/, ''); // "3.jpg"
答案 1 :(得分:1)
如果您希望使用子字符串:
var str="C:\\FakePath\\3.jpg";
var imgName = str.substring(12);
答案 2 :(得分:1)
logopath = encodeURIComponent( logopath ).replace( /.+FakePath%0/, '' )
'\ 3'被解释为八进制转义序列,指向不可打印的ASCII字符。
答案 3 :(得分:1)
如果你想在经典ASP中解决, plesae试试吧。
<%
dim aryPath
aryPath = Split("C:\FakePath\3.jpg","\")
Response.Write aryPath(2)
%>
希望它有所帮助。
答案 4 :(得分:1)
使用此类代码:
function FileChanged(input) {
var fullPath = input.value;
var index = fullPath.lastIndexOf("\\");
var fileName = (index < 0) ? fullPath : fullPath.substr(index + 1);
alert(fileName);
}
您需要两条中间线:它们将在最后一次斜线后取值。这样路径并不重要,它总是只返回文件名。