Rails: сброс полей формы с обновлением страницы - PullRequest
5 голосов
/ 20 июля 2010

У меня есть форма Rails, у которой есть поле наблюдения, которое выполняет запрос ajax при изменении раскрывающегося списка. Ajax вызывает повторную визуализацию формы (форма является частичной) с дополнительным параметром, который вызывает изменение текста на странице. Все это прекрасно работает, но когда я обновляю страницу (я запускаю firefox), текст сбрасывается, и выпадающий список не меняет своего значения. Таким образом, я получаю значение select, которое не соответствует динамическому тексту.

Я попытался установить выбранное по умолчанию значение раскрывающегося списка, но по какой-то причине Firefox не изменит значение при обновлении страницы.

Это код для выпадающего списка:

<%= select_tag :category, options_from_collection_for_select(@categories, :letter, :name, @letter) %>

@ буква устанавливается динамически и управляет динамическим текстом на странице.

Это действие, которое отображается при обновлении страницы:

def new</p> <pre><code>@part = Part.new @letter = params[:letter] || "A" @part.cpn = Part.find_next_cpn(@letter) @categories = PartCategory.find(:all) respond_to do |format| format.js format.html end

конец

Мне нужен способ сохранить динамическую текстовую информацию или сбросить раскрывающееся меню.

1 Ответ

5 голосов
/ 20 июля 2010

Вам необходимо отключить опцию «автозаполнение» - это говорит браузеру, что вы не хотите, чтобы поле автозаполнялось.

Пример здесь: http://mspeight.blogspot.com/2007/06/disable-browsers-autocomplete-on-rails.html

Вы также можете сделать то же самое, но просто отключить автозаполнение для определенных полей.

Другими словами, форма не обновляется, потому что браузер пытается помочь, введя последние данные, которые использовал клиент. Вы должны сказать браузеру перестать пытаться быть полезным. Вы уже предоставляете правильные данные.

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