2015-01-14 2 views
0

먼저 Javascript가 좋지 않다고 말하면서 간단한 서식 지정 문제라고 생각합니다.전단지 - 변수를 기반으로 목록의 모든 레이어를 추가하고 제거합니다.

변수를 기반으로지도에 레이어를 추가하거나 제거하려고합니다. 이 경우 num입니다. 클릭 수에 따라 num에 추가하거나 제거하는 기능이 있습니다.

아래 코드의 if 문을 사용하여 하나의 레이어를 쉽게 추가하고 제거 할 수 있습니다. 내가하고 싶은 것은 레이어 목록을 만든 다음 그 레이어를 반복하고 맵에서 레이어를 추가하거나 제거하는 것입니다.

이 내가 만약 문 (문없이) 하나 개의 층으로 잘 작동하지만이 목록 하나에 모든 레이어를 통해 실행 얻을 수 없습니다

var one = [Township,Section] \\list of layers 
for (i = 0; i < one.length; i++) { 
    if (num != 1 && map.hasLayer(i)) { 
    map.removeLayer(i); 
    } 
    if (num == 1 && map.hasLayer(i) == false) 
    { 
     map.addLayer(i); 
    } 
    } 

을 것입니다.

아무도 내가 그것을 appriciate 것이라고 생각한다면.

답변

1

i는 레이어가 아닌 정수 값입니다. 따라서 map.hasLayer(i)map.removeLayer(i)은 잘못된 유형의 매개 변수를 사용합니다. 또한

+0

map.addLayer(one[i]) 대답 해 주셔서 감사합니다 : map.hasLayer(one[i])map.removeLayer(one[i])

편집을 사용해보십시오. 나는 단순한 것을 엉망으로 만들고 있다는 것을 알았다. 그것은 소녀들과 어울리는 일생 일대가 당신을 가르쳐 줄 것입니다! –

관련 문제