2013-08-07 3 views
0

getfeatureinfo를 사용하여 단일 값을 추출하려고합니다. GeoServer가 제공 한 정확한 코드를 사용했습니다.geoServer에서 단일 값 추출 getfeatureinfo

   map.events.register('click', map, function (e) { 
       document.getElementById('nodelist').innerHTML = "Loading... please wait..."; 
       var params = { 
        REQUEST: "GetFeatureInfo", 
        EXCEPTIONS: "application/vnd.ogc.se_xml", 
        BBOX: map.getExtent().toBBOX(), 
        SERVICE: "WMS", 
        INFO_FORMAT: 'text/html', 
        QUERY_LAYERS: map.layers[0].params.LAYERS, 
        FEATURE_COUNT: 50, 
        Layers: 'Wind Speed', 
        WIDTH: map.size.w, 
        HEIGHT: map.size.h, 
        format: format, 
        s tyles: map.layers[0].params.STYLES, 
         srs: map.layers[0].params.SRS}; 

        // handle the wms 1.3 vs wms 1.1 madness 
       if(map.layers[0].params.VERSION == "1.3.0") { 
        params.version = "1.3.0"; 
        params.j = parseInt(e.xy.x); 
        params.i = parseInt(e.xy.y); 
       } else { 
        params.version = "1.1.1"; 
        params.x = parseInt(e.xy.x); 
        params.y = parseInt(e.xy.y); 
       } 

       // merge filters 
       if(map.layers[0].params.CQL_FILTER != null) { 
        params.cql_filter = map.layers[0].params.CQL_FILTER; 
       } 
       if(map.layers[0].params.FILTER != null) { 
        params.filter = map.layers[0].params.FILTER; 
       } 
       if(map.layers[0].params.FEATUREID) { 
        params.featureid = map.layers[0].params.FEATUREID; 

       } 

       OpenLayers.loadURL("http://localhost:8080/geoserver/GIS/wms", params, this, setHTML, setHTML); 

       OpenLayers.Event.stop(e); 
      }); 

     } 

     // sets the HTML provided into the nodelist element 
     function setHTML(response){ 

      document.getElementById('nodelist').innerHTML = response.responseText; 

     }; 

이제 응답에서 단일 값을 가져 오려고합니다. 나는 파싱을 시도했다. COntent.ftl 변경 중. 그러나 반환 된 코드는 HTML 형식입니다. response.responseXML을 사용하려고하면 Null을 반환합니다. 누군가 입력을 제공 할 수 있다면 도움이 될 것입니다. 그것은 그것이 직설적 인 느낌을주는 것에 따라 그 frustating 그러나 조용한 지난 3 일 이후 그것 위에있다.

감사합니다, Astha

답변

0

당신은 먼저 setHTML 기능에 JSON으로 데이터를 구문 분석하고 당신이 필요로하는 속성을 찾기 위해 시도 할 수 있습니다.