用反斜杠显示路径(javascript)

时间:2016-01-06 11:20:21

标签: javascript regex replace alert backslash

我尝试在简单的javascript警告命令上显示路径:

<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
</head>
<body>
    <div onClick=myFunction('D:\user\myself\dos')>
    clic here
</div>

<SCRIPT LANGUAGE = "JAVASCRIPT">
  function myFunction(p) {
   alert(p);
  }
</SCRIPT>

但它没有显示反斜杠.. 我想我应该用“\”替换所有“\”,但我找不到办法。 (我尝试了p = p.replace(/\\/g, '\\\\');和许多其他语法,但都没有。

你知道如何处理这个问题吗?

编辑: 路径来自一个函数,我不能直接在“onClick”

中编辑它

2 个答案:

答案 0 :(得分:3)

反斜杠'\'本身用作转义字符。 因此,在您要显示的每个反斜杠之前再添加一个反斜杠。

如果您无法修改网址,请尝试添加新属性并在onClick处理程序中访问该属性。

尝试下面的工作代码段:

function myFunction(elem) {
   alert(elem.getAttribute('data-url'));
  }
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
<head>
</head>
<body>
    <div data-url="D:\user\myself\dos" onClick=myFunction(this)>
    clic here
</div>

更新:更新了代码段,允许在不修改字符串的情况下显示网址。

答案 1 :(得分:0)

你只需要用反斜杠调用你的函数来逃避转义字符:

myFunction('D:\\user\\myself\\dos')

这适用于您的情况吗?