Не включайте скрытое поле в строку запроса при отправке формы с помощью GET - PullRequest
3 голосов
/ 23 апреля 2011
http://localhost:3000/users?utf8=%E2%9C%93&search=aen

Вот моя форма в представлении:

<% form_tag users_path, :method => 'get', :html => { :class => 'ui-form' } do %>
    <div class="ui-input ui-input-search">
      <%= text_field_tag :search %>
    </div>
  <% end %>

, которая генерирует скрытое поле, которое отправляется:

<div style="margin:0;padding:0;display:inline"><input name="utf8" type="hidden" value="✓"></div>

Ответы [ 4 ]

5 голосов
/ 23 апреля 2011

Установите атрибут disabled в поле, которое вы не хотите отправлять.

Или это реальный вопрос о том, как заставить рельсы не создавать это скрытое поле?

0 голосов
/ 10 января 2012

Вот фрагмент кода jquery - добавьте его в свой макет, чтобы отключить поле utf8 во всех формах GET

:javascript
      $('form[method=get] input[name=utf8]').attr("disabled", "disabled");
0 голосов
/ 23 апреля 2011

Вы можете попробовать сделать что-то подобное в функции onsubmit:

document.getElementsByName('utf8')[0].disabled = "disabled";

, чтобы предотвратить отправку.

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

Это можно сделать с помощью JS, если вы используете form.serialize (), удаляете ненужную часть параметров и делаете новый запрос get с новыми параметрами

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