2015-01-15 4 views
0

Итак, у меня есть страница, где я делаю выбор с помощью кнопок параметров. Эти выборы отображаются как значение. Существуют опции, которые по умолчанию выбираются с использованием Javascript в соответствии с приведенным ниже кодом.Назад кнопка Javascript issue

Теперь на удар Продолжайте, перейди на следующую страницу. Теперь на следующей странице у меня есть кнопка «назад», и когда я нажимаю кнопку «Назад», то, что я хочу, это выбор, который я сделал на предыдущей странице, должен оставаться прежним. Что происходит, с другой стороны, выбранные по умолчанию параметры появляются.

Я использую эту кнопку на данный момент:

<input type="button" value="Back" onclick="window.history.back()" /> 

И это, как я делаю выбор:

<div class="panel panel-default"> 
    <div class="panel-heading"> 
    <h2 class="panel-title" id="selected_part_<%= part.id %>"> 


     <% @link_text = "<b>#{part.name}</b> : <span class='selected_part_option'>#{part.options.detect{|o| o.is_default?}.try(:name)}</span>" %> 

     <% if part.children.exists? %> 
     <% part.children.each do |part_child| %> 
     <% if part_child.display_type == "radio" || part_child.display_type == "dropdown" %> 
     <%# @link_text = @link_text + " | <span id='part_child_" + part_child.id.to_s + "'>" + part_child.options.first.name + "</span>" %> 
     <% end %> 
     <% end %> 
     <% end %> 
     <%= link_to raw(@link_text), "#collapse_part_#{part.id}", class: "collapser", "data-toggle" => "collapse", "data-parent" => "#accordion" %> 
    </h2> 
    </div> 

Любая идея, как я могу добиться того, что я хочу? Спасибо заранее.

+0

Я думаю, что вам нужно хранить эти значения где-то в кеше (localStorage и т. Д.) И перезагружать их или показывать страницы не как отдельные, а одно. Если вы скрываете/показываете виртуальные страницы в соответствии с [история] (https://developer.mozilla.org/en-US/docs/Web/Guide/API/DOM/Manipulating_the_browser_history) или [window.location] (https: // developer.mozilla.org/en-US/docs/Web/API/Window.location), вы будете отображаться как перемещение по фактическим страницам html, а не div. И вам понадобится только одна загрузка для начальной страницы. – kurideja

ответ

0

Поведение браузера Firefox по умолчанию заключается в том, чтобы помнить входное значение формы. Я думаю, что в вашем случае вы можете использовать JavaScript, который автоматически сбрасывает форму, что приводит к потере состояния, которое браузер запомнил.

+0

О, да, он работает так, как ожидалось, на Mozilla, но на хром .. – Suraj

Смежные вопросы