I got it to work using Geoserver 2.3 and Leaflet with WFS 1.0.0 here.
When I changed to version 1.1.0 and 2.0.0 it returned the same json object as 1.0.0 but neither rendered on the map. Not sure why and it's a bit beyond me.
Here's what I'm using:
var rootUrl = 'http://tomcat.capecodgis.com/geoserver/capecodgis/ows';
var defaultParameters = {
service: 'WFS',
version: '1.0.0',
request: 'GetFeature',
typeName: 'capecodgis:monitor_station',
maxFeatures: 200,
outputFormat: 'text/javascript',
format_options: 'callback: getJson'
};
var parameters = L.Util.extend(defaultParameters);
$.ajax({
url: rootUrl + L.Util.getParamString(parameters),
dataType: 'jsonp',
jsonpCallback: 'getJson',
success: handleJson
});
function handleJson(data) {
L.geoJson(data, {
onEachFeature: onEachFeature,
pointToLayer: function (feature, latlng) {
return L.circleMarker(latlng, geojsonMarkerOptions);
//return L.marker(latlng);
}
}).addTo(map);
}
Hope this helps