JS钻取地图

广坤在线求助:

目前的JS有点小问题,首次下拉选择省份可以实现钻取效果。切换省份的时候,会先切到全国,再选择一次才可以切换成功。这个要怎么改一下呢。大佬求救

JS钻取地图.zip

FineReport 谢广坤 发布于 2023-8-22 11:35 (编辑于 2023-8-22 15:06)
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
PikaLv6见习互助
发布于2023-8-22 17:28(编辑于 2023-8-22 17:28)
  • 谢广坤 谢广坤(提问者) 切换省份的时候是有问题的。你可以测一下
    2023-08-22 18:01 
  • Pika Pika 回复 谢广坤(提问者) 没问题啊,选哪个省切换到哪个省啊
    2023-08-23 08:29 
  • Pika Pika 回复 谢广坤(提问者) 我都测了
    2023-08-23 08:30 
  • 谢广坤 谢广坤(提问者) 回复 Pika 确实可以 但是还有一个问题能帮忙解答一下嘛?点击地图上的“中国”这个钻取目录,清空下拉框。谢谢大佬
    2023-08-23 09:18 
最佳回答
0
CT1448Lv5初级互助
发布于2023-8-22 15:17(编辑于 2023-8-22 18:10)

JS钻取地图.zip

var chart=FR.Chart.WebUtils.getChart("chart0").getChartWithIndex(0);//获取图表对象

var quyu= this.options.form.getWidgetByName("quyu").getValue();//获取下拉框控件的值

if (chart.getLayerIndex() > 0)

chart.drillUp(chart.getLayerIndex() - 1);// 若已经下钻,点击其他区域需返回上一层级后再次下钻

var areas= [];

//根据区域下钻

chart.series.forEach(ser => areas.push(...ser.points));

var len=areas.length;

for(var i=0;i<len;i++){

        if(areas[i].name==quyu){

                chart.drillDown(areas[i]);

                break;

        }

}

  • 谢广坤 谢广坤(提问者) 跟我写的那个一样呀 会有问题
    2023-08-22 15:26 
  • CT1448 CT1448 回复 谢广坤(提问者) chart.drillUp(chart.getLayerIndex() - 1);// 若已经下钻,点击其他区域需返回上一层级后再次下钻 这个你没写。
    2023-08-22 15:58 
  • 谢广坤 谢广坤(提问者) 回复 CT1448 if (charts.layerIndex > 0){ charts.drillUp(charts.layerMap[charts.layerIndex - 1])};我这么写的。你这个和chatgpt插件回复的一样一样的
    2023-08-22 16:03 
  • CT1448 CT1448 回复 谢广坤(提问者) 放在for循环里面会影响drillDown 的执行。把这段放在外面试试。我这边可以的。
    2023-08-22 17:00 
  • 谢广坤 谢广坤(提问者) 回复 CT1448 方便传一下您的demo嘛
    2023-08-22 18:02 
  • 3关注人数
  • 371浏览人数
  • 最后回答于:2023-8-22 18:10
    请选择关闭问题的原因
    确定 取消
    返回顶部