我想在extendedData中存储一个URL,以便稍后在描述中使用它

时间:2013-01-29 10:01:55

标签: kml quotes cdata

我目前正在创建一个KML文件,该文件将所有相关信息存储在字段中。这包括两个URL(一个到另一个页面,一个到应该显示的图像)。

<ExtendedData>
<Data name="sProUrl">
    <value>http://bla.com/bla.htm</value>
</Data> 
</extendedData>

我这样做是因为我可以使用$ [test]来访问数据,以访问标签中的所有信息。

<![CDATA[<table><tr><td><b><a href=&quot;$[sProUrl]&quot;>]]>

OR

<![CDATA[<table><tr><td><b><a href="$[sProUrl]">]]>

这只适用于仅包含文本的项目,但对于Web和图像链接无效。不知何故,CDATA和$ []内的引用似乎不相处。意味着链接未正确显示:

  

http://bla.com/bla.htm&#34;&#34; target =&#34; _ blank&#34;&gt;示例文本应该是链接

我试图用\来逃避角色,我试图将引号放在值和其他内容中,但没有任何作用。

有什么想法吗?

这是一个更完整的代码示例,享受:

<Style id="style001">
<IconStyle>

    <color>ff7f3d08</color>
    <colorMode>normal</colorMode>

    <Icon>
        <href>http://bla.com/white-dot.png</href>
    </Icon>

    <hotSpot x="0.5"  y="0.0" xunits="fraction" yunits="fraction"/> 

</IconStyle>

<BalloonStyle>
    <text>
        <![CDATA[<a href=&quot;$[sProUrl]&quot;>[sTitle]</a></b><table style="width:100%;padding:0px;margin:0px"><tr><td valign="top"><i>$[sPrize]</i><br><b>Year:</b> $[iYear]<br><b>Author:</b> $[sAuthor]<td align="right"><img src="$[sImgUrl]"></td></tr></table>]]>
    </text>
</BalloonStyle>         

<Placemark>
<description />

<styleUrl>#style001</styleUrl>

<Point>
    <coordinates>-4.2437307340134,31.438844258775,0</coordinates>
</Point>

<ExtendedData>
    <Data name="sProUrl">
        <value>http://bla.com/bla.htm</value>
    </Data>

    <Data name="sTitle">
        <value>Title</value>
    </Data>

    <Data name="sPrize">
        <value>Prize</value>
    </Data>         

    <Data name="iYear">
        <value>2013</value>
    </Data>     

    <Data name="sAuthor">
        <value>mebu83</value>
    </Data> 

    <Data name="sImgUrl">
        <value>http://bla.com/bla.jpg</value>
    </Data>
</ExtendedData>
</Placemark

1 个答案:

答案 0 :(得分:0)

如果您可以发布更多信息,那会有所帮助,但我注意到的第一件事是CDATA部分中的转义引号也未正确终止。例如可能不是:

<![CDATA[<table><tr><td><b><a href="$[sProUrl]"]]>

其次,随着更多的人编写你正在做的事情的意图可能会更清楚(并允许更好的答案)。