Использование jQuery для вывода списка всех проверенных значений группы флажков.Работает в FF и Chrome, а не в IE - PullRequest
0 голосов
/ 11 ноября 2010

Этот код работает как чемпион в FF и Chrome, возвращая список проверенных значений, разделенных запятыми:

$('#lifesteps-group-0 :checked').each(function() {
  if (allSteps.length === 0) {
      allSteps = $(this).val();
}
else {
    allSteps = allSteps + ',' + $(this).val();
     }
});

По сути, в div lifesteps-group-0 есть все флажки.Как я уже говорил выше, он прекрасно работает в FF и Chrome, но работает только для первого флажка в IE.

Также вот формат группы флажков:

<div id="lifesteps-group-0">                        
    <div>
        <input type="checkbox" class="checkbox" name="lifesteps-0" id="lifesteps-0-22" value="22">
        <label for="ls-22" class="checkboxgroup">Began preparation as a missionary canidate</label>
    </div>                      
    <div>
    <input type="checkbox" class="checkbox" name="lifesteps-0" id="lifesteps-0-23" value="23">
    <label for="ls-23" class="checkboxgroup">Began a small group, helped in a church plant</label>
     </div>
</div>

Любые идеи, оjQuery GURUS?

Спасибо,

Джош

Ответы [ 3 ]

2 голосов
/ 11 ноября 2010

Вы можете использовать .map() для этого немного чище и быстрее, например:

var allSteps = $('#lifesteps-group-0 :checked').map(function() {
                 return this.value;
               }).get().join(', ');

Если allSteps является подразумеваемым глобальным (я не вижу, что оно объявлено в вашем коде), то это приведет к возникновению некоторых проблем в IE (как вы видите), лучше всего быть безопасным при объявлении этого.

0 голосов
/ 23 апреля 2014

попробуйте инициализировать allSteps переменную

это работало в IE8 как дано; когда я попробую с

var allSteps='';
0 голосов
/ 11 ноября 2010

Ваши флажки должны иметь разные идентификаторы, но одно и то же имя.

Ваш селектор не должен основываться на идентификаторе.

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