防止Javascript转义特殊字符

防止Javascript转义特殊字符,javascript,hyperlink,concatenation,href,Javascript,Hyperlink,Concatenation,Href,这听起来像是一个愚蠢的问题。尽管如此,我已经到处寻找答案,但仍然无法找到答案 我试图用JS构建一个动态链接,但JS一直在逃避“/” 这是我的代码: var permalink = 'http://yvannasr.com/events'; var slug = 'run-1'; var name = 'run 1'; var link = "<a href=" + "'"+ permalink + "/" + slug +"/" +"'"+"> <a href=" http

这听起来像是一个愚蠢的问题。尽管如此,我已经到处寻找答案,但仍然无法找到答案

我试图用JS构建一个动态链接,但JS一直在逃避“/”

这是我的代码:

var permalink = 'http://yvannasr.com/events';
var slug = 'run-1';
var name = 'run 1';

var link = "<a href=" + "'"+ permalink + "/" + slug +"/" +"'"+">
<a href=" http:="" yvannasr.com="" events="" run-1="" '="">
<a href="http://yvannasr.com/events/run-1/">
var permalink='1〕http://yvannasr.com/events';
变量slug='run-1';
变量名称='运行1';
变量链接=”
这是我为link变量得到的输出:

var permalink = 'http://yvannasr.com/events';
var slug = 'run-1';
var name = 'run 1';

var link = "<a href=" + "'"+ permalink + "/" + slug +"/" +"'"+">
<a href=" http:="" yvannasr.com="" events="" run-1="" '="">
<a href="http://yvannasr.com/events/run-1/">

您的语法绝对正确,但在设置“link”变量时有一个小的变化,即缺少一个结束符“(双引号)。
当您将上述“link”变量呈现为HTML时,您可能会得到与输出中提到的类似的结构,因为缺少结束标记

你应该擅长以下几行

var link = "<a href=" + "'"+ permalink + "/" + slug +"/" +"'"+">"
var link=“”

编辑:首先,您将字符串赋值给变量
链接的语法错误。不能在结尾处添加
字符。如果要添加该字符,应使用
“\”
,因为反斜杠转义双引号,使其可以用作普通字符

我看不出你的代码怎么可能产生你发布的结果。尤其是到处都是等号;这对我来说毫无意义

当我运行此代码时:

var x=”http://www.google.com"; x

结果是:

”http://www.google.com“


正斜杠可以在字符串中使用,而无需任何转义或解决方法。

如果您想在
(字符串)中输出
,请在字符串中使用
转义它-
”http://\“wwww\”
似乎可以正常工作->对我来说可以正常工作。只需在最后一个括号后加上双引号(“)…var link=”“;您似乎在某个地方有一组额外的
。我建议运行调试器并检查每个变量,以确保在某些地方没有额外的引号或双引号。在我的控制台中运行
var link=“
”会给出正确的字符串。所以问题可能出在变量上,不管它们实际上是什么。我想你在连接文字字符串时搞砸了。只要把所有不是变量的东西放在同一个字符串中,就像这样:
var link=”“
。请注意,我正在做
href=
,后面是单引号,后面是双引号,以防阅读困难。