Leaflet load WFS from Geoserver with jsonp

by spydmobile

HTML

<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.6.4/leaflet.css">
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script src="http://cdn.leafletjs.com/leaflet-0.6.4/leaflet.js"></script>
<div id="map"></div>
<br />
<b>Datasource of the WFS-Layer: <a href="http://ccb.capecodgis.com/" target="_blank">http://ccb.capecodgis.com</a> </b>

CSS

html { height: 100% }
      body { height: 100%; margin: 0; padding: 0;}
      #map{ height: 85% }

JavaScript

var m= L.map('map').setView([65, -121], 5);

var mapQuestAttr = 'Tiles Courtesy of <a href="http://www.mapquest.com/">MapQuest</a> &mdash; ';
var osmDataAttr = 'Map data &copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors';
var mopt = {
    url: 'http://otile{s}.mqcdn.com/tiles/1.0.0/osm/{z}/{x}/{y}.jpeg',
    options: {attribution:mapQuestAttr + osmDataAttr, subdomains:'1234'}
  };
var osm = L.tileLayer("http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png",{attribution:osmDataAttr});
var mq=L.tileLayer(mopt.url,mopt.options);
mq.addTo(m);
var rootUrl = 'http://gs2.vm.sparcsonline.com/geoserver/sparcs/ows';
var defaultParameters = {
    service: 'WFS',
    version: '2.0.0',
    request: 'GetFeature',
    CQL_FILTER: "fireid='SS051-15'",
    typeName: 'sparcs:fire_gps',
    maxFeatures: 200,
    outputFormat: 'text/javascript',
    format_options: 'callback: getJson'
};
var parameters = L.Util.extend(defaultParameters);
var foo = L.geoJson.AJAX({
    url: rootUrl + L.Util.getParamString(parameters),
    dataType: 'jsonp',
    jsonpCallback: 'getJson',
    success: handleJson,
       onEachFeature: function (feature, layer) {
         layer.bindPopup("name: "+feature.properties.fireid+"<br />type: "+feature.properties.source);
     }
}).addTo(m);

//var group = new L.featureGroup().addTo(m);

function handleJson(data) {

        
    
	//m.fitBounds(group.getBounds());
}


function getJson(data) {
console.log("callback function fired");
}