現在、すべての関連情報をフィールドに格納する KML ファイルを作成しています。これには 2 つの URL が含まれます (1 つは別のページへ、もう 1 つは表示される画像へ)。
<ExtendedData>
<Data name="sProUrl">
<value>http://bla.com/bla.htm</value>
</Data>
</extendedData>
$[test] を使用してタグ内のすべての情報にアクセスし、データにアクセスできるようにしています。
<![CDATA[<table><tr><td><b><a href="$[sProUrl]">]]>
また
<![CDATA[<table><tr><td><b><a href="$[sProUrl]">]]>
これは、テキストのみを含むアイテムでは問題なく機能しますが、Web と画像のリンクでは失敗します。どういうわけか、CDATA 内の引用符と $[] がうまくいかないようです。リンクが正しく表示されないことを意味します。
http://bla.com/bla.htm "" target="_blank">リンクにするテキストの例
\ で文字をエスケープしようとしたり、値などの中に引用符を入れようとしたりしましたが、何も機能しません。
何か案は?
より完全なコード例を次に示します。お楽しみください。
<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="$[sProUrl]">[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