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));