Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 尝试从php调用js函数并将php html字符串作为参数传递_Javascript_Php - Fatal编程技术网

Javascript 尝试从php调用js函数并将php html字符串作为参数传递

Javascript 尝试从php调用js函数并将php html字符串作为参数传递,javascript,php,Javascript,Php,这就是我面临的问题 echo "<script type='text/javascript'>window.insertCartInHeader({$cart});</script>"; echo“window.insertCartInHeader({$cart});”; $cart变量包含HTML代码块。 我得到了Uncaught SyntaxError:Unexpected token您需要添加引号(“),让javascript知道它是一个字符串,并且您应该使用

这就是我面临的问题

 echo "<script type='text/javascript'>window.insertCartInHeader({$cart});</script>";
echo“window.insertCartInHeader({$cart});”;
$cart变量包含HTML代码块。 我得到了
Uncaught SyntaxError:Unexpected token您需要添加引号(“),让javascript知道它是一个字符串,并且您应该使用
addslashes
,因为您可能在该html中有类或属性

echo "<script type='text/javascript'>window.insertCartInHeader(\"". addslashes($cart) . "\");</script>";
你可以改进这个替换,但是你明白了。

你需要添加引号(“),让javascript知道它是一个字符串,你应该使用
addslashes
,因为你可能在html中有类或属性

echo "<script type='text/javascript'>window.insertCartInHeader(\"". addslashes($cart) . "\");</script>";

你可以改进这个替换,但你明白了。

为什么要用花括号?字符串用引号括起来。show insertCartInHeader请编辑您的问题但忽略我的评论…?为什么要用大括号?字符串用引号括起来。show insertCartInHeader请编辑您的问题,但忽略我的评论…?未捕获的语法错误:无效或意外的标记我用HTML尝试了它,它成功了,请在$cart中发布整个字符串。@Nikanor我相信您仍然有问题,因为您的代码是多行的。您需要用“\”转义换行符。只需在{$cart}周围用tilda字符转义即可。感谢您的提示,yea multiline是这里的问题所在。未捕获的语法错误:无效或意外的标记我用HTML尝试了它,它成功了,在$cart中发布整个字符串。@Nikano我相信您仍然有问题,因为您的代码是多行的。您需要用“\”转义换行符。只需在{$cart}周围用tilda字符转义即可。谢谢你的提示,是的,多行是这里的问题。
echo "<script type='text/javascript'>window.insertCartInHeader(\"". addslashes($cart) . "\");</script>";
$html = '<h1 class="hi">It works</h1>';
str_replace("\n", "\\", addslashes($cart));