Rails 3: Форма Падача - Усталёўка TextField як: ідэнтыфікатар

У мяне ёсць простая старонка з адным тэкставым полем і кнопка адпраўкі. Я хачу, каб карыстальнік мог ўвесці радок, і ёсць кнопка прадставіць накіраваць карыстальніка на пэўную старонку, дзе тэкставае поле знаходзіцца ў URL, як: ідэнтыфікатар.

Напрыклад, калі карыстальнік ўводзіць «тэст», націснуўшы адправіць варта адправіць яго ў «/ кантролер/дзеянне/тэст».

Ці магчыма гэта? Я спрабаваў:

<%= form_tag :controller => "myController", :action => "myAction", :id => :textFieldName do %> ...

але гэта не працуе. (Я не падазраваў, што гэта будзе.)

дзякуй

0

2 адказы

Вы павінны былі б выкарыстоўваць Javascript. У найпростым выглядзе

$('form').submit(function() {
  $(this).attr('action') = '/url/prefix/' + $(this).find('input#the_field').val();
  return true;
});

І тады апрацоўшчык павінен вярнуцца і форма павінна прадставіць новы адрас.

Звярніце ўвагу, што вы павінны таксама праверыць/нармалізаваць змесціва поля.

0
дададзена

Вы можаце паспрабаваць ...

Не ўстанаўлівайце ідэнтыфікатар тэга формы. Замест гэтага вазьміце значэнне тэкставага поля, з PARAMS хэша ў якасці парады, куды перанакіраваць.

гэта значыць, з пункту гледжання ...

<% text_field_tag :id => "test_value" ... %>

і ў кантролеры ...

redirect_to "/action/" + params[:test_value]
0
дададзена