从wms图层保存特征的特定属性

时间:2014-11-11 16:22:54

标签: javascript openlayers

我想实现一种快速简单的方法,从存储在wms层中的大量多边形中的单个多边形中提取信息。 我想用getGetFeatureInfoUrl来做这件事,但问题是我只回到网址。

我必须关注该链接才能获取该功能的信息。 一旦我按照链接,一切都在那里,我所说的一切都是与该功能相关的每个属性。 但是,我只想保存该请求的一个属性。

关于如何做到这一点的任何想法?

1 个答案:

答案 0 :(得分:1)

假设我理解你的意思: 我碰巧在几天前解决了这个问题:

实际上它非常简单。 首先,我假设您已经使用getGetFeatureInfoUrl编写了该部件。 我建议将getGetFeatureInfoUrl的结果作为json。它也可能适用于其他格式,但我还没有尝试过。

其他所有事情只需几分钟:

所以这是一个javascript函数,你可以从getGetFeatureInfoUrl中获取你的url

function httpGet(theUrl)
{  var xmlHttp = null;
   xmlHttp = new XMLHttpRequest();
   xmlHttp.open( "GET", theUrl, false );
   xmlHttp.send( null );
   return xmlHttp.responseText;                 
}

现在您只需将该函数的结果复制到变量

var content = httpGet(theUrl);

然后在内容字符串中搜索要保存的那个属性。

在我的情况下,它就在那个字符串的末尾,不知道它是如何在你的情况下完成的。但最终看起来可能就像这样。

var specific_attribute = content.substr(content.length-10); specific_attribute = specific_attribute.substr(0,5);

瞧,您将所需的一个属性保存到变量中。

希望,这有帮助。