你好,
在Arcgis Portal上,我想用Arcade和HTML来表示我的公交线路。我想知道电话号码,然后把颜色和数字联系起来。
我的值就像我的停车功能:1号线,2号线,……,测试56。
我的第一个问题是只得到数字。我可以分割字段,但我不知道如何得到值。
有人认为这是可能的还是太复杂了?与国际金融协会也许?
我知道这个博客,但我的问题有点不同。https://www.esri.com/arcgis-blog/products/arcgis-online/mapping/combining-arcade-and-html-for-a-real..。
谢谢你!
解决了!转到解决方案。
问题是,你只能输出一种颜色。你的弹出窗口可以有某种元素,可能是一个形状或一行文本,但你只能定义它的颜色一次。
如果希望每行有一个元素与stop相关联,则需要某种方法分别标识每行。这意味着,每一行都需要自己的表达式。
你可以试一试在一个表达式中创建一个行列表,但是你会发现HTML标签必须在弹出窗口中建立,不在表达式中。当你尝试在表达式本身中使用HTML时,你会得到这个:
<……>项被视为原始文本,而不是HTML。
对于每个可能的行,你需要在弹出窗口中有某种占位符。根据可能的行数,这可能导致一个相当不优雅的弹出窗口。
这可能远远超出了您的问题范围,但是您对数据有多大的控制?是否有可能在车站和线路之间建立一个关系类?基于字符串的Lines列表似乎很难使用。
正如Josh所说,如果你想在弹出窗口中以不同的方式格式化这些行,你必须为每一行创建一个表达式。
// expression/show_line_1 //如果Line field中没有“Line 1”则返回“none”//如果Line field中没有“Line 1”则返回“block”var result = Find("Line 1", $feature.LineField) if(result == -1) {return "none"} return "block"
在弹出式配置中,切换到HTML源代码。
< span style="font- family:宋体;">此站的行: Line 1 Line 2
祝你有愉快的一天!
约翰内斯
如果你的行总是由相同的字符(“/”在你的图像)分开,你可以使用这个:
// show_line_1 var lines = Split($feature. conf)LineField, "/")返回IIF(包含(lines, "Line 1"), "block", "none")
如果Includes还没有提供给你(它是最新的街机版本),它会有点麻烦:
// show_line_1 var lines = Split($feature. conf)LineField, "/") for(var i in lines) {if(lines[i] == "Line 1") {return "block"}} return "none"
你好,
真正的好。我在找这个。我想知道是否可以根据字段属性添加超链接。我的问题是,我想显示一个别名的超链接。但装备领域可以有一个以上的设备(因此我使用你的解决方案为分裂)。
我希望你能理解我的难处。
干杯
佩德罗
// show_line_1 var lines = Split($feature. conf)装备,“,”)for(var i in lines) {if(lines[i] == "car"){返回"https://luxe。Digital /lifestyle/cars/fastest cars/"}}返回"none"