проверка, если флажок установлен, пропускается во время выполнения - PullRequest
0 голосов
/ 18 сентября 2018

Я ломал голову над этим часами и ничего не получил.У меня есть простая форма, которую я буду отправлять в базу данных, после проверки и проверки, конечно.

Тем не менее, я застрял с получением состояния флажка, который я использую.Мой код возвращает все значения, кроме флажка, и почти так же, как пропускает извлечение состояния флажка, потому что предупреждения после объявления переменной, потому что предупреждения с другими значениями запускаются и отображаются.

Однако проверенное свойство ничего не возвращает.Я искал и нашел бесчисленные способы сделать это, и я чувствовал, что перепробовал все из них.Ниже приведено лишь несколько способов, которые я пробовал.Кто-нибудь может увидеть, что я делаю не так ???

$(function() {
  $('#submit').on('click', function() {
    var studId = $('input[name="Selected"]:checked').val();
    var classId = $('#ClassSelection').find(":selected").val();
    var classCode = $('input[name="Code"]').val();
    //var isOnline=$("input[type='checkbox']").val();
    //var isOnline=$("input[name='isOnline']").prop('checked');
    //var isOnline=$("input[name='isOnline']").is('checked');
    var isOnline = $("input[name='isOnline']").val();
    alert(studId);
    alert(classId);
    alert(classCode);
    alert(isOnline);
  });

});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="checkbox" name="isOnline" class="form-control">
<input type="button" class="btn btn-primary" id="submit" value="Submit">

Ответы [ 2 ]

0 голосов
/ 18 сентября 2018

Похоже, что мой Wamp-сервер работал и не отображал мои последние нажатия на сайт. Это объясняет, почему казалось, что он пропускал мой код без сбоев. Я перезапустил свой wamp-сервер, и он начал распознавать мои изменения.

0 голосов
/ 18 сентября 2018

Как отметил Тайлер Ропер, функция .prop () должна просто работать.

Вы можете попробовать

$('#submit').on('click', function() {
    var isOnline1=$("input[type='checkbox']").val();
    var isOnline2=$("input[name='isOnline']").prop('checked');
    var isOnline3=$("input[name='isOnline']").is('checked');
    console.log(isOnline1);
    console.log(isOnline2);
    console.log(isOnline3);
});

Я создал кодовую ручку для него: https://codepen.io/delpielo/pen/zJmevg,, просто сравнивая вывод, когда вы нажимаете кнопку «Отправить» с установленным / не отмеченным флажком.

  • .val () всегда возвращает 'on' - не то, что вы хотите
  • .is ('флажок') всегда возвращает false - не то, что вы хотите
  • .prop ('флажок') - возвращает false, если не отмечен, в противном случае - true, именно то, что вы ищете
...