2012-02-20 84 views
7

使用Jade引擎找出'&'的难点。 我需要使用下面的字符串,使谷歌地图的电话: script(type='text/javascript', src='http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE')如何在Jade中使用'&'

但是,这将在玉被渲染为: src="http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE

回答

-3

&是你如何在HTML代表“的符号”。 &的意思是“字符引用的开始”。

您当前的输出是正确的,并且可以正常工作(除非其他错误)。您正在尝试生成依赖于浏览器执行错误恢复的无效代码。

+1

感谢您的回复。我只是对原始问题做了一些修改。我需要使用“&”拨打谷歌地图,而不是“&Amp;”。目前的输出不被Google识别。 – ngzhongcai 2012-02-20 15:06:50

+0

@ngzhongcai - 你**正在**用'&调用Google地图。 '&'是你如何告诉浏览器在某处放置一个'&'字符。 – Quentin 2012-02-20 15:11:29

+0

https://github.com/visionmedia/jade/issues/198 – ngzhongcai 2012-02-20 15:12:59

0

如果有人仍然需要解决这个问题,他们可以阅读here

因此,我的解决方法是使用纯脚本标记。这是玉文件的内容。

!!! 
html 
head 
    link(rel='stylesheet', href='/stylesheets/test.css') 
    <script src="http://maps.googleapis.com/maps/api/js?key=API_KEY&sensor=false"></script> 

    script(src='/javascripts/test.js') 

body 
    button(onclick='initialize()') Click Me! 
    div#map_canvas 
10

仍然根据https://github.com/visionmedia/jade/issues/198现在可以写出:

script(type='text/javascript', src!='http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=SET_TO_TRUE_OR_FALSE') 

注意!=src参数;因此其内容不会逃脱。