php 变量中的斜杠在 javascript 中未正确解析


Slashes in php variable not being parsed correctly in javascript

可能的重复项:
JSON:为什么正斜杠被转义了?

我正在将包含"//"的值从PHP传递到Javascript。但是,这些值一直解析"//"为:"'/'/"当我使用 json 解码时,无论我如何尝试包围或转义字符串......

.

这是我使用的代码:

.PHP

foreach($varr as $vr)
{
    array_push($legendarr, "%%.%% - ".$vr);                        
    array_push($linkarr, "http://".$_SERVER['HTTP_HOST']."/getdata.php?criteria=".$vr);
}

JavaScript:

pie = r.piechart(320, 240, 100, <?php echo json_encode($vcr); ?>, { legend: <?php echo json_encode($legendarr); ?>, legendpos: "west", href: <?php echo json_encode($linkarr); ?>});

问题是变量linkarr以以下形式显示:

http:'/'/localhost:8090'/getdata.php?criteria=......

有谁知道为什么会这样?我该如何解决它?

谢谢。

字符串

"http:'/'/www.example.org"仍将在 JavaScript 中打印为"http://www.example.org"

我相信,转义斜杠是 JSON 标准的一部分。但它不应该以任何方式影响你的JS代码。

顺便说一句,mysql_escape_string('//')完全脱离了上下文;HTML != 数据库。