почему не работает JS функция при событии onchange?

на asp.net странице есть чекбокс, я хочу чтобы при нажатии на него, срабатывал алерт, но вместо этого страница просто обновляется

Функция JS выглядит следующим образом:

    function check_AutoCampaign() {
      var chb = document.getElementById("<%=cbAutoCampaign.ClientID%>");
      if (chb.checked) {
          alert('checked');
      }
      else {
          alert('no it is not');
      }
      return false;
}

а вот и сам чекбокс:

<asp:CheckBox ID="cbAutoCampaign" onchange="check_AutoCampaign();" runat="server" Text="chb" style="font-size: 10pt; margin-left: 5px" AutoPostBack="True" />

UPD:пробовал менять AutoPostBack на False, но это не решило мою проблему

Вопрос: почему страница обновляется, вместо того, чтобы показать алерт?


Ответы (1 шт):

Автор решения: srvr4vr

Вот так сделайте:

 function check_AutoCampaign(event) {

  if (event.target.checked) {
      alert('checked');
  }
  else {
      alert('no it is not');
  }
  return false;
}

В разметке тоже надо пробросить событие:

<asp:CheckBox onchange="check_AutoCampaign(event);" Text="chb" AutoPostBack="False" />
→ Ссылка