Подтвердить что ты не робот

Button_to без отправки

Могу ли я иметь кнопку со стороны формы, но не иметь type=submit?

Я делаю что-то особенное. У меня есть форма,

<%= form_for(@user) do |f| %>

и эта форма будет отображаться на основе значения в сеансе.

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

Но если я использую button_to, тип кнопки будет "отправить", когда я нажму кнопку, он представит всю форму. Если какое-то значение недействительно, оно будет жаловаться. Он не работает как кнопка "Отмена", которую я ожидал.

Могу ли я получить кнопку, которая не отправит форму?

Я попытался использовать submit_tag, но buttom dosn`t работает для меня...

<%= submit_tag 'Cancel Edit', :type => 'button', :controller => 'my_account', :action=>'cancel_edit' %>
4b9b3361

Ответ 1

button_to helper фактически генерирует целую форму:

Создает форму, содержащую одну кнопку, которая отправляет URL-адрес, созданный набором options.

Так что определенно не то, что вы хотите. Я думаю, вы просто хотите создать простой элемент <input type="button"> в своем HTML. Однако нет button_tag в FormTagHelper, но есть submit_tag, вы можете передать параметр :type, и это будет:

Любой другой ключ создает стандартные параметры HTML для тега.

Итак, попробуйте следующее:

submit_tag 'Pancakes', :type => 'button'

где "Блинчики" станут вашей настоящей меткой.

Ответ 2

Попробуйте следующее:

<%= button_tag "Cancel", :type => 'button', :class => "subBtn", :onclick => "location.href = '#{list_admin_users_admin_index_path()}'" %>

Ответ 3

Вы можете использовать помощник, похожий на f.submit:

<%= f.button 'Save' %>

Документация