кнопки с флажками скрыты после обновления страницы

#jquery #html #ruby-on-rails #twitter-bootstrap #checkbox

#jquery #HTML #ruby-on-rails #twitter-bootstrap #флажок

Вопрос:

У меня есть форма с кнопками переключения флажков (с использованием Twitter bootstrap и Rails)

 <div class="btn-group" data-toggle="buttons">
  <label class="btn btn-primary">
    <input type="checkbox"> Option 1
  </label>
  <label class="btn btn-primary">
    <input type="checkbox"> Option 2
  </label>
</div>
  

Я нажимаю и выбираю Option 1 . Затем я обновляю страницу. При обновлении страницы все кнопки сбрасываются и Option 1 больше не выбираются. Однако, если я продолжу и отправлю форму, Option 1 она отправляется на сервер, как если бы она была выбрана (отмечена). Это ошибка? Это из-за чего-то в cookie. Если да, как я могу проверить файл cookie и найти те, которые следует нажать, и команду для изменения их статуса на нажатые.

У меня также есть текстовые поля ( <input type='text'> ) в форме. Если я пишу в текстовых полях и обновляю страницу, тексты остаются. Кажется, где-то за кулисами состояние кнопок тоже остается проверенным, но на дисплее я вижу их как непроверенные. Поэтому, хотя кнопки с флажками, похоже, не отмечены, когда я отправляю форму, они отправляются как отмеченные.

Большое спасибо.

Комментарии:

1. Вы уверены? Это вывод html или вы создаете форму с помощью erb или slim?

2. Да, я уверен. Я использую файл .html.erb. У меня также есть текстовые поля ( <input type='text'> ) в форме. Если я пишу в текстовых полях и обновляю страницу, тексты остаются. Кажется, где-то за кулисами состояние кнопок тоже остается проверенным, но на дисплее я вижу их как непроверенные. Поэтому, хотя кнопки с флажками, похоже, не отмечены, когда я отправляю форму, они отправляются как отмеченные.

3. Это странно проверьте исходный код в вашем браузере после перезагрузки, может быть, чтобы проверить значение флажков, у вас есть это где-нибудь, и вы можете поделиться им?

Ответ №1:

Это не лучшее решение, но это начало: сброс кнопок после обновления страницы:

 $(document).ready(function() {
  $('.btn').button('reset');
});