开发环境:asp.net 2.0
问题描述:在javascript中实现页面刷新,将路径参数值中的反斜杠和其后的字母当作转义字符处理了,
以至于找不到正确的文件路径;
解决方法:将 单反斜杠'\' 替换成 双反斜杠'\\';
想必大家很自认的会想到将 将 单反斜杠'\' 替换成 双反斜杠'\\' 的方法,但是要注意如果使用replace('\','\\\\')后
会发现只能将第一个反斜杠替换掉,其余的没有处理;这个问题和replace方法的定义有关,具体可以参考:http://www.w3school.com.cn/js/jsref_replace.asp
想要替换所有的单反斜杠'\' ,可以在replace的第一个参数,正则表达式上下功夫定义正则表达式var reg=/\\/,表示
单反斜杠'\' ,但是这样replace(reg,'\\\\')执行后,依然只替换了第一个反斜杠,想要替换所有的反斜杠,需要为正则表达式,
添加修饰符g,可以参考:http://www.cainiao8.com/web/js_note/js_regular_expression.html
这样将正则表达式修改为var reg=/\\/g,后再执行replace(reg,'\\\\'),可以看到成功的将所有单反斜杠'\' 替换成 双反斜杠'\\' ,
至此路径问题得以解决。