我有一个像这样的OpenLayers.Style:
PoisStyle = new OpenLayers.Style({
...
label: "${poiLabel}"
}, {
context: {
...
poiLabel: function(feature) {
return "+212011223344";
}
}
});
但+212011223344
中的+会被忽略,所有显示的都是212011223344
有什么想法吗?
答案 0 :(得分:1)
在评估期间,调用方法OpenLayers.Style.createLiteral
,其中包含以下行:
value=(isNaN(value)||!value)?value:parseFloat(value);
您的字符串内容被归类为不正在"而不是数字",因此请求parseFloat
返回一个数字,此数字将转换为没有前导" +"的字符串。同样地,你会丢失尾随零。
作为快速修复,您可以在文字中插入零宽度不间断空格:
return "+\ufeff212011223344";
这使得字符串"不是数字"没有可见。
答案 1 :(得分:0)
请尝试使用ASCII代码:
+