Поведение переключателя чекбокса противоположно ожидаемому? - PullRequest
1 голос
/ 09 января 2011

На на этом сайте есть флажок "Холевые услуги" для запуска отображения слоя карты.

Проблема в том, как флажок ведет себя. Это обратное тому, что я ожидаю - оно срабатывает, когда не проверено , а не проверено ?

<div><input  type="checkbox" id="cholera_control" name="cholera_control" />
<label for="cholera_control">Cholera Facilities</label></div>

Ответы [ 2 ]

1 голос
/ 09 января 2011

Просто поменяйте местами if с else.

Вместо:

if (showCholera) {
    kmlLayerCTF.setMap(null);
} else {
    kmlLayerCTF.setMap(map);
}

сделать:

if (showCholera) {
    kmlLayerCTF.setMap(map);
} else {
    kmlLayerCTF.setMap(null);
}

Это происходит потому, что ваше начальное значение false.

var showCholera = false;

... тогда вы изменяете его до оператора if():

showCholera = !showCholera;

... поэтому, когда if() выполняется, showCholera равен true, и вместо else.

выполняется if.
0 голосов
/ 09 января 2011

Изменить

<input type="checkbox" id="cholera_control" name="cholera_control" />
<input type="checkbox" name="mc-cb" id="mc-cb">

на:

<input type="checkbox" check="checked" id="cholera_control" name="cholera_control" />
<input checked="checked" type="checkbox" name="mc-cb" id="mc-cb">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...