在我的Ruby on Rails应用程序中,此控制器使用Javscript渲染进行响应。对于某些“标签”,我需要用换行符\n
替换空格。有两种方法可以做到这一点:
1)替换db本身的空格,只需在前端获取并提供它。
这使"North America"
变为“North\nAmerica"
2)在应用程序代码中替换它
label = label.gsub(" ","\n")
第二个打破了javascript代码。我使用firebug查看了请求,第二个断言,新行字符实际上被解释为与第一个实现相比,它显示为纯文本。
上下文: 该操作呈现.js文件,因为它是对ajax调用的响应。 js文件调用Morris.js函数来实现分析。在这里也可以看到这个问题:svg-text-disappears-on-larger-label
答案 0 :(得分:1)
您的代码中出现javascript转义似乎存在问题。 如果你使用远程请求而不是使用escape_javascript,并且如果你在html中使用脚本,那么你必须按照我们通常的方式使用'\'
来逃避它