Получить значения всех выбранных флажков в нескольких формах

0

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

HTML:

<input type="checkbox" class="A" value="0">0</input>
<input type="checkbox" class="A" value="1">1</input>

<input type="checkbox" class="B" value="0">0</input>

<button onclick='return selectedvalues();'>GO!</button>

JavaScript:

function selected values(){
    //alert all selected values of checkboxes of classes A and B
}
  • 1
    вы используете JQuery?
  • 2
    @xFortyFourx помечен как таковой. Тем не менее, если у вас есть хорошее решение no-jQuery, обязательно напишите в любом случае.
Показать ещё 3 комментария
Теги:

3 ответа

1
Лучший ответ
function selectedValues(){
    //alert all selected values of checkboxes of classes A and B
    var $checkboxes = $("input[type='checkbox']:checked");
    $checkboxes.each(function(){
        alert($(this).attr("class") + " " + $(this).val());
    });
}

Эта функция будет делать трюк.

  • 0
    Я попробовал ваше решение, но оно не сработало, см. Jfiddle здесь
  • 1
    Ваш jsfiddle не включает мой код. Я не помогаю людям делать домашние задания специально. Я забыл сделать только выбранные пункты, хотя, это было исправлено. Попробуйте еще раз?
Показать ещё 6 комментариев
1

Хотя вы уже приняли ответ, у меня было несколько моментов, и я подумал, что предлагаю эту интерпретацию:

function findChecked() {
    var group = document.getElementsByName(this.name),
        checked = [].map.call(group, function(a){
            a.nextElementSibling.style.color = a.checked ? 'limegreen' : '#000';
            if (a.checked) {
                return a;
            }
        }).filter(function(a){
            return 'undefined' !== typeof a;
        });
    return checked;
}

[].forEach.call(document.querySelectorAll('input[type="checkbox"]'), function(a){
    a.addEventListener('change', findChecked);
});

Демо-версия JS Fiddle.

Рекомендации:

0

Это должно сделать это

function selected_values() {
 var messages = "";
 $("form input[type='checkbox']:checked").each(function(){ 
 // Go through all checkboxes that are checked
  messages += $(this).val()  + "\n";
 });
 alert(messages);
}
  • 0
    Это работает также, спасибо

Ещё вопросы

Сообщество Overcoder
Наверх
Меню