我正在开发一个具有自定义属性的自定义控件。
如果我想使用属性的值,这很容易。对于属性“maptype”的值,我可以使用compositeData.maptype 但是如何使用组来做到这一点?
例如,我有一个名为“Marker”的组,可以有多个。每个标记有五个属性:“地址”、“标题”、“图层”、“信息文本”和“图标”。例如,如何访问第三个标记上的标题值?
我正在开发一个具有自定义属性的自定义控件。
如果我想使用属性的值,这很容易。对于属性“maptype”的值,我可以使用compositeData.maptype 但是如何使用组来做到这一点?
例如,我有一个名为“Marker”的组,可以有多个。每个标记有五个属性:“地址”、“标题”、“图层”、“信息文本”和“图标”。例如,如何访问第三个标记上的标题值?
有很多方法可以使用它。它只是一个具有可以迭代的属性的集合。一种方法是在重复控件中使用它。这是一个如何使用它的示例:
<xp:repeat id="repeat1" rows="30"
value="#{javascript:compositeData.Marker}"
var="rowMarker">
<xp:label id="lbladdress"
value="#javascript:rowMarker.address}">
</xp:label>
<xp:label id="lbltitle"
value="#javascript:rowMarker.title}">
</xp:label>
</xp:repeat>
属性组被解释为 com.ibm.xsp.binding.PropertyMap java 类。多个实例被解释为 java.lang.ArrayList 类。知道这一点我会尝试
compositeData.Marker[2].address
用于简单的数据绑定。或者
compositeData.Marker.get(2).get('address')
用于通过纯 javascript 访问。
如果你想循环,你可以使用: for(marker in compositeDate.Marker){ marker.title; }