Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.07.2013, 12:44
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

Несколько чекбоксов
Добрый день.
Хочу сделать несколько чекбоксов на странице.
Код примерно такой
$(document).ready(function() {
      $('#btnStatus').click(function(){
        var isChecked = $('#chkSelect').is(':checked');
        alert(isChecked);
        if(isChecked)
          $('p').html('Checkbox is checked: <b>True</b>');
        else
          $('p').html('Checkbox is checked: <b>False</b>');
      });
    });

это срабатывает только для первого чекбокса.
Подскажите пожалуйста, как правильно написать, что бы код срабатывал для каждого чек бокса и Checkbox is checked: <b>True</b> писалось только под нужным чек боксом.
Ответить с цитированием
  #2 (permalink)  
Старый 01.07.2013, 12:49
Аспирант
Отправить личное сообщение для rockerror Посмотреть профиль Найти все сообщения от rockerror
 
Регистрация: 07.11.2011
Сообщений: 54

у вас проблема скорее всего в том, что вы ориентируетесь по id элемента. А id элемента должно быть уникальным. Т.е. вам нужно либо присвоить каждому элементу уникальный id и проверять отдельно (не очень тру), или ориентироваться на класс, т.е. добавить элементам, например класс .myCheckbox и по нажатию на кнопку проходиться по ним функцией .each() т.е.
$('.myCheckbox').each(function(){
    if ( $(this).is(':checked') ) $('p').html('Checkbox is checked: <b>True</b>');
});


Код не тестил, но как-то так должно быть.
Ответить с цитированием
  #3 (permalink)  
Старый 01.07.2013, 13:25
Кандидат Javascript-наук
Отправить личное сообщение для Зосимов Посмотреть профиль Найти все сообщения от Зосимов
 
Регистрация: 11.02.2013
Сообщений: 102

Сообщение от rockerror Посмотреть сообщение
у вас проблема скорее всего в том, что вы ориентируетесь по id элемента. А id элемента должно быть уникальным. Т.е. вам нужно либо присвоить каждому элементу уникальный id и проверять отдельно (не очень тру), или ориентироваться на класс, т.е. добавить элементам, например класс .myCheckbox и по нажатию на кнопку проходиться по ним функцией .each() т.е.
$('.myCheckbox').each(function(){
    if ( $(this).is(':checked') ) $('p').html('Checkbox is checked: <b>True</b>');
});


Код не тестил, но как-то так должно быть.
спасибо.
Но почему то не работает (
Ответить с цитированием
  #4 (permalink)  
Старый 01.07.2013, 14:01
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,081

Зосимов,
html код какой у вас?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как c функцией .ajax() передать несколько значений в php? Faab jQuery 11 19.11.2013 12:03
При повторении несколько раз animate - рассинхрон... Petja jQuery 4 21.05.2013 12:58
Несколько простых скриптов JS koshsh Работа 1 08.05.2012 20:58
Несколько созданных элементов располагаются в одной строке. Как этого избежать? Hold Events/DOM/Window 1 21.01.2011 23:52
Несколько одинаковых таблиц. Обращение к отдельным элементам в них. zaytsewa Элементы интерфейса 7 11.11.2010 09:08