Получение количества флажков и переключателей - PullRequest
0 голосов
/ 05 июня 2018

Итак, мой вопрос, как я смогу подсчитать флажки, которые отмечены, и переключатели, которые имеют «да» для ответа ... код, который я сейчас использую для переключателя:

<label class="radio-inline">
<input form="ES3S" type="radio" name="Textbook'.$i.'" value="'.$Result[$i]['ID'].'"> Yes
</label>
<label class="radio-inline">
<input form="ES3S" type="radio" name="Textbook'.$i.'" value="-1">No
</label>


<span class="d-inline-block" data-toggle="popover" title="Error" data-content="This book is required by the school. If you want to cancel this out, proceed to the principals office with the book for review." data-trigger="hover">
<input form="ES3S" required checked onclick="return false;" type="checkbox" value="'.$Result[$i]['ID'].'" name="Textbook'.$i.'">
</span>

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

SetInterval(ScriptUpdate, 1000);


function ScriptUpdate(param){


var check = $('#form').find('input[type=checkbox]:checked').length;
   alert('You have checked forms');
   return false;
}):    }

Ура!Заранее спасибо

Ответы [ 4 ]

0 голосов
/ 05 июня 2018

Фильтр на основе текста «да» и установленного переключателя:

var radioButtonSelectedCount = $('input[type=radio]:checked').parent().filter(function() {
       return $(this).text().trim()=="Yes"
    }).length;
0 голосов
/ 05 июня 2018

Используйте следующее: -

function checkboxes(){
    var checkBoxCheckedCount = document.querySelectorAll('input[type=checkbox]:checked').length;
    var radioButtonSelectedCount = document.querySelectorAll('input[type=radio]:checked').length;
    alert(checkBoxCheckedCount+radioButtonSelectedCount);

}

Затем вы можете использовать переменные checkBoxCheckedCount и radioButtonSelectedCount в соответствии с вашими потребностями.

0 голосов
/ 05 июня 2018

Для радио кнопок вы можете сделать что-то вроде этого.

var countRadio = 0;
$('label.radio-inline').each(function(){
    if($(this).text() == "yes") {
        if($(this).children('input[type=radio]:checked').length > 0) {
            countRadio++;
        }
    }
});
console.log('Counted ' + countRadio  + ' Radiobuttons with yes');
0 голосов
/ 05 июня 2018

Несколько способов подсчитать количество отмеченных флажков / переключателей, это, вероятно, самый простой способ:

$(document).ready(function(){
  alert($("input[type=radio]:checked").length);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...