leaflet加载大量marker,onclick产生dialog,动态id问题
今天周六,外面下着小雨,记录一下前段时间遇到的一个小问题吧。
项目中需要使用leaflet加载大量marker,每个marker 点击产生一个图表。
我的思路是:使用for循环加载大量marker之后,给每个marker一个onclick事件,
之后click产生一个dialog,在dialog里面产生图表,图表采用百度的echarts。
首先写了demo,进行测试,图表加载正常。将demo写在项目里的时候出现了一个问题:
点击第一个maeker时候产生了图表,之后切换点击其他的maeker之后dialog就会变成空白的。
原本以为,是dialog每次点击之后没有进行清空呢,之后对dialog进行了clear,不好使,又进行了destory销毁,发现也不好使,后来想到是不是原因不在dialog,就对dialog里面的两个div加上不同的背景色,发现点击以及切换点击之后都是正常的,之后研究了很久发现是div里的id,重复了,虽然每次加载dialog都是加载之后销毁的,但是div里面的id,都是同样的没变,之后测试给id换成了动态的,如同tab1,tab2,tab3这种样式,代码如下:
ok!问题解决了,动态id之后,每个marker点击都出现了图表。对于我这种刚刚接触编程的小白来说,感觉好难啊 ,解决了问题很是兴奋。记录一下。
-
2019/03/16/10:40*