gpt4 book ai didi

javascript - 在 Rails 中使用 JSONP 呈现多行 Javascript

转载 作者:行者123 更新时间:2023-11-30 06:48:44 25 4
gpt4 key购买 nike

在 Controller 中,我尝试呈现一个 javascript 谷歌广告,以使用 JSONP 将其打印成一些 HTML,就像这样

<script type="text/javascript"><!--
google_ad_client = "pub-23222424";
google_alternate_color = "FFFFFF";
google_ad_width = 468;
google_ad_height = 60;
//--></script>
<script type="text/javascript"
src="http://pagead2.google.com/pgad/show_ads.js">
</script>

我也是这样的:

render :text "var s_response = { content: '<script type=\"text/javascript\"><!--\\ngoogle_ad_client = \"pub-23222424\";\\ngoogle_alternate_color = \"FFFFFF\";\\ngoogle_ad_width = 468;\\ngoogle_ad_height = 60;\\n//--><\\/script>\\n<script type=\"text/javascript\"\\n  src=\"http://pagead2.google.com/pgad/show_ads.js\">\\n<\\/script>', id: '2'};">

但是我得到这个错误:

未终止的字符串文字

[Break on this error] var response = { content: '<script type="text/javascript"><!-- 

=> 这似乎是一个多行问题,对吗?但我不知道如何解决。

谢谢,

卢卡斯

最佳答案

在 JavaScript 中,您不能将一个字符串分布在多行中。

在这种情况下,您可以省略这些注释,这样您就可以将所有内容放在一行中并去掉换行符 (\n)。

顺便说一句,一个有效的 JSON response 将用双引号将每个字符串括起来,无论它代表一个键还是一个值。另见 JSONLint的常见问题:

Proper format for a collection is: {
"key": "value" }

最后,你得到:

render :text "var s_response = { \"content\": \"<script type='text/javascript'>google_ad_client = 'pub-23222424';google_alternate_color = 'FFFFFF';google_ad_width = 468;google_ad_height = 60;<\\/script><script type='text/javascript' src='http://pagead2.google.com/pgad/show_ads.js'><\\/script>\", \"id\": \"2\"};">

关于javascript - 在 Rails 中使用 JSONP 呈现多行 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3392835/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com