Javascript 如何在传单中获得CountyId或StateId?
我想在传单上找到countyIdJavascript 如何在传单中获得CountyId或StateId?,javascript,asp.net-mvc,leaflet,Javascript,Asp.net Mvc,Leaflet,我想在传单上找到countyId info.update = function (props) { if (props) { propsState = props.State; //StateName propsName = props.name; //CountyName propsRanking = props.Ranking; } }; 以上代码仅获取StateName
info.update = function (props) {
if (props) {
propsState = props.State; //StateName
propsName = props.name; //CountyName
propsRanking = props.Ranking;
}
};
以上代码仅获取StateName和CountyName。如何获取CountyId或StateId?您的问题是ID号比properties子对象高一级。GeoJSON的布局如下:
var statesData = {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "01",
"properties": {
"name": "Alabama",
"density": 94.65
},
"geometry": {
//continues on for a long time...
highlightFeature函数
中的代码是在鼠标上方运行的代码,通过对象层.feature.properties
。这将成为函数中的道具。如果您查看GeoJSON,它比ID值低一级
要解决此问题,请改为传入layer.feature
,并将函数更改为以下内容:
info.update = function (feature) {
if (feature) {
var props = feature.properties;
propsState = props.State; //StateName
propsName = props.name; //CountyName
propsID = feature.id; //NOTE we are using feature here, NOT props
propsRanking = props.Ranking;
}
};
你是在遵循某个地方的教程吗?info
对象来自哪里?我正在跟踪,但我看不到他们的get county谢谢。可能这段代码是为州工作的,但我的问题是get country和GeoJSON是这样安排的:
var countries=[{“type”:“Feature”,“id”:“01001”,“properties”:{“name”:“Autauga”,“Ranking”:5,“State”:“Alabama”},“geometry”..
county的ID号与properties是同一级别的,我正在尝试您的代码,但它不起作用,我在var props=feature.properties处检索错误;错误位置:0x800a138f-JavaScript运行时错误:无法获取未定义或空引用的属性“properties”orry。第一次运行时,它不会通过在任何功能中,这就是您获得空引用的原因。只需快速检查功能if(feature){var props=feature.properties;}//继续
这里有一个工作显示了这一点。我还编辑了我的答案以反映这一点。是的,这是工作。谢谢您的帮助,新问题是它在Firefox浏览器中运行不正常吗(运行速度非常慢),但在Chrome中运行正常?你可以在我不知道的地方看到我的演示。可能是传单问题。我想问另一个问题。