2017-10-31 8 views
0

がフォームを含むテーブルの一部になります。ただし、この場合は、送信ボタンがrawごとに描画されるため、ユーザーは1つずつクリックする必要があります。しかし、私は1つのボタン提出で変更しようとしています。以下のフォームにさまざまなフォームの値を投稿すると、

<tbody> 
    <% sum= @movies.inject(0) {|sum,x| sum+x.ticket_count } 
    cnt = 0 %> 
    <% @movies.each_with_index do |movie, idx| %> 
     <tr id="theater_<%= movie.id %>"> 
     <td><%= idx+1 %></td> 
     <td><%= movie.title %></td> 
     <% if @matchables[movie.title] != 0 
      t = movie.title %> 
      <td><img src="<%= @matchables[t].poster %>" width="100" /></td> 
      <td><%= @matchables[t].title %></td> 
     <% else %> 
      <td> </td> 
      <td> </td> 
      <td> </td> 
     <% end %> 
     <%= form_tag(save_movies_admin_theaters_path, method: 'get') do %> 
      <%= hidden_field_tag :tid, movie.id %> 
      <td><%= text_field_tag(:nid, (@matchables[movie.title] != 0 ? @matchables[movie.title].naver_id : ""), class: 'input-mini') %></td> 
      <td><%= submit_tag('submit' , class: "btn btn-primary") %></td> 
     <% end %> 
     <td></td> 
     <td></td> 
     </tr> 
    <% end %> 
    </tbody> 
</table> 

ので、私は、行のすべての値を取得し、jsの機能をajaxフォームを経由して、それを通じ送信する

<input type='text' name='mid' class='movie' value=''/> 

を使用して考えました。しかし、私は実際にjsrailsと慣れていないので、この形式で複数の値を送信するためのガイドがあれば教えてください。代わりの

答えて

0

あなたはtbodyレベルにformタグを作ることができるが何であるかで明確にしてくださいget'.Can。
ムービーごとに<%= fields_for "movies[]", movie do |mv| %>も使用してください。

<tbody> 
<%= form_tag(save_movies_admin_theaters_path, method: 'get') do %> 
    <% sum= @movies.inject(0) {|sum,x| sum+x.ticket_count } 
    cnt = 0 %> 
    <% @movies.each_with_index do |movie, idx| %> 
    <%= fields_for "movies[]", idx do |mv| %> 
     <tr id="theater_<%= movie.id %>"> 
     <td><%= idx+1 %></td> 
     <td><%= movie.title %></td> 
     <% if @matchables[movie.title] != 0 
      t = movie.title %> 
      <td><img src="<%= @matchables[t].poster %>" width="100" /></td> 
      <td><%= @matchables[t].title %></td> 
     <% else %> 
      <td> </td> 
      <td> </td> 
      <td> </td> 
     <% end %> 
     <%= mv.hidden_field :tid, movie.id %> 
     <td><%= mv.text_field :nid, (@matchables[movie.title] != 0 ? @matchables[movie.title].naver_id : ""), class: 'input-mini') %></td> 
     <td></td> 
     <td></td> 
     </tr> 
    <% end %> 
    <% end %> 
    <tr><%= submit_tag('submit' , class: "btn btn-primary") %></tr> 
<% end %> 
</tbody> 

提出後、この形式でparamsを読むことができます。

params[:movies][idx] 
+0

私はこのようにparams [:movies] [0]を取得できませんでした。あなたが見逃したことはありますか? –

0
<%= form_tag(save_movies_admin_theaters_path, method: 'post') do %> 
      <%= hidden_field_tag :tid, movie.id %> 
      <td><%= text_field_tag(:nid, (@matchables[movie.title] != 0 ? @matchables[movie.title].naver_id : ""), class: 'input-mini') %></td> 
      <td><%= submit_tag('submit' , class: "btn btn-primary") %></td> 
     <% end %> 

書き込み「ポスト」「あなたは、あなたの正確な質問

+0

この場合、送信ボタンの番号を作成していますが、1つのボタンとして送信する必要があります。 –

関連する問題