Проверка, если флажок отмечен с помощью Javascript - PullRequest
2 голосов
/ 03 марта 2011

Я пытался проверить, установлен ли флажок некоторое время. По какой-то причине он не работает правильно, он просто говорит, что ничего не выбрано.

Функция

    if(document.theform.hail.Checked==true && document.theform.wind.Checked==false && document.theform.tornado.Checked==false){
        alert("Hail Checked");
}else{
        alert("Nothing Selected");
    }

Форма

<form name="theform" action="<?php echo $PHP_SELF; ?>" method="post">
      <div class="date">
        From: <script type="text/javascript">DateInput('orderdate', true, 'YYMMDD')</script>  To:<script type="text/javascript">DateInput('orderdatetwo', true, 'YYMMDD')</script>
      </div>
      <div class="checkBoxes">
        <input id="hail" name="hail" type="checkbox" value="hail">Hail<br />
        <input id="wind" name="wind" type="checkbox" value="wind">Wind<br />
        <input id="tornado" name="tornado" type="checkbox" value="tornado">Tornado<br />
        <input name="submit" type="submit" value="View Data" onClick="document.theform.action='<?php echo $PHP_SELF; ?>';">
        <input name="submit" type="button" value="Create KML" onClick="generatorChoice();">

Ответы [ 3 ]

8 голосов
/ 03 марта 2011

Свойство должно быть в нижнем регистре.

var theform = document.theform;
if(theform.hail.checked && !theform.wind.checked && !theform.tornado.checked) {
    alert("Hail Checked");
} else {
    alert("Nothing Selected");
}

Кроме того, как показывает приведенный выше код:

  • Нет необходимости явно проверять true или false
  • Сохраните ссылку на theform для лучшей производительности
3 голосов
/ 03 марта 2011
if(document.getElementById("hail").checked && !document.getElementById("wind").checked && !document.getElementById("tornado").checked) {
    alert("Hail Checked");
} else {
    alert("Nothing Selected");
}
2 голосов
/ 03 марта 2011

В Javascript свойство называется checked, а не Checked.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...