You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

KML与Google动态地图:<ExtendedData>中NTS_Text无法加载至弹窗

解决KML弹窗无法显示ExtendedData属性值的问题

嘿,我看你遇到的问题是Google Maps加载KML后,弹窗里没法显示NTS_Text的内容对吧?问题其实出在BalloonStyle里的变量引用格式上,你当前用的写法不符合Google Maps KML解析器的要求,所以读不到对应的值。

具体调整方法:

  • 把<BalloonStyle>里的$[Adresy_web_kml_ID/NTS_Text]改成直接用$[NTS_Text]就行,不需要加Schema的ID前缀
  • 你已经确保了<SimpleField>和<SimpleData>的name属性完全匹配,这部分没问题,不用改

修改后的样式代码:

<Style id="globema_style">
<IconStyle>
<scale>1</scale>
<Icon>
<href>https://sites.google.com/site/karolinakmlhosting/kml-files/kolecko_7px.png</href>
</Icon>
</IconStyle>
<BalloonStyle>
<text>
<![CDATA[Informace o výstavbě: $[NTS_Text] ]]>
</text>
</BalloonStyle>
</Style>

为什么原来的写法不生效?

Google Maps的KML实现里,当你通过<SchemaData>关联了Schema之后,引用字段只需要直接用<SimpleField>的name值就够了。只有当同一个KML里有多个同名字段(分属不同Schema)时,才需要用SchemaID/FieldName的格式来区分,你的场景里不存在这种情况,所以直接写字段名就可以正常读取。

另外可以额外检查这两点确保万无一失:

  • 确认整个KML文件的XML格式是合法的,没有标签遗漏、语法错误
  • 确认每个<Placemark>的<ExtendedData>里都正确包含了<SimpleData name="NTS_Text">条目(你的示例里这部分是对的)

改完之后,点击地图上的标记,弹窗应该就能正常显示NTS_Text的内容啦。

内容的提问来源于stack exchange,提问作者Karolína Fenclová

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 16:27:38