Javascript 防止Scala不必要地转义XML中的双引号
如果我在Scala代码中生成一些Javascript,如下所示:Javascript 防止Scala不必要地转义XML中的双引号,javascript,xml,scala,escaping,Javascript,Xml,Scala,Escaping,如果我在Scala代码中生成一些Javascript,如下所示: <script type="text/javascript"> foo("{bar}"); </script> foo(“{bar}”); Javascript包含一个双引号字符(如示例中所示),当XML转换为字符串时,它将显示为“,Firefox将拒绝此Javascript,因为它有语法错误 在不删除实际需要的“的情况下,如何避免此Javascript错误 我正在将Play framewo
<script type="text/javascript">
foo("{bar}");
</script>
foo(“{bar}”);
Javascript包含一个双引号字符(如示例中所示),当XML转换为字符串时,它将显示为“
,Firefox将拒绝此Javascript,因为它有语法错误
在不删除实际需要的“
的情况下,如何避免此Javascript错误
我正在将Play framework 1.2.4与Scala模块0.9.1一起使用,这需要Scala 2.8.1。您是否需要此功能
scala> val bar=scala.xml.Unparsed(""""hello"""")
bar: scala.xml.Unparsed = "hello"
scala> val x = <script type="text/javascript">foo({bar});</script>
x: scala.xml.Elem = <script type="text/javascript">foo("hello");</script>
scala>val bar=scala.xml.Unparsed(“'hello”“)
bar:scala.xml.Unparsed=“你好”
scala>valx=foo({bar});
x:scala.xml.Elem=foo(“你好”);
如果您是从播放模板调用它,您应该能够执行${myscript.raw()},而不仅仅是${myscript}。#{verbatim/}标记也应该起作用。我不知道Scala,但将脚本内容放在CDATA块帮助中吗?@Pointy不,不幸的是,这没有什么区别。请看。我担心Scala模块使用的是另一种基于Scala的模板语言-我正在使用-所以我不能使用这个答案。啊,我的错!它没有包含JS的一些原始功能,这让我从讨厌的字符串构建中解脱出来。谢谢