2012-04-09 5 views
0

고유하지 않은 ID가있는 뷰에 테이블이 있습니다. Ajax에서 컬럼 중 하나에 제출 버튼을 활성화 시켰고 Ajax 결과가 ID와 일치하는 테이블의 모든 행을 업데이트하고 싶습니다. 거기에 어쨌든 할 수 있습니까? 나는 ID의 첫 번째 발생을 업데이트하기 위해서만 얻을 수있었습니다.
도움 주셔서 감사합니다!Ajax로 다중 테이블 행을 업데이트하십시오.

다음은 관련 코드입니다.

내보기의 테이블 코드;

$('.gift_<%= params[:mailing_list_edit][:parent_id] %>').html("foobar") 

: 여기

<% @gifts.each do |gift| %> 

<tr id="<%= gift.parent_id %>"> 
    <% if gift.key_indicator == "Individual" %> 
    <td><%= gift.first_name %> <%= gift.last_name %></td> 
    <% else %> 
    <td><%= gift.organization_name %></td> 
    <% end %> 
    <td><%= l gift.gift_date.to_date, :format => :default %></td> 
    <td><%= number_to_currency(gift.fund_split_amount) %></td> 
    <td><%= if gift.fund_id =~ /\A[Xx]/ then :CND else :US end%></td> 
    <td><%= gift.preferred_primary_email_number %></td> 
    <td><% if @subscriber_ids.include?(gift.constituent_id) %> 
     Yes 
     <% else %> 
     <%= form_for(@teacher.mailing_list_edits.build(:parent_id => gift.parent_id),remote: true) do |f| %> 
      <div><%= f.hidden_field :parent_id %></div> 
     <%= f.submit "Add", :class => "btn btn-large btn-primary" %> 
     <% end %> 
    <% end %> 
    </td> 
</tr> 
<% end %> 

$('#<%= params[:mailing_list_edit][:parent_id] %>').html("foobar") 
+0

물론 이것은 가능하지만 dom 구조에 크게 의존합니다. – apneadiving

+0

몇 가지 코드를 보여주세요! –

+1

DOM 요소 ID가 고유해야한다고 생각하고 클래스를 사용하여 요소 그룹을 지정 했습니까? – MrTheWalrus

답변

1

앞으로 이동하여 create.js.erb에서 다음

<tr id="<%= gift.parent_id %>" class="gift_<%= gift.parent_id %>"> 

로 변경 내 create.js.erb입니다 그렇게하면 클래스를 사용하여 여러 요소에 액세스 할 수 있으며 그들을 모두 쉽게 대체하십시오.

+0

그 트릭을 했어! 감사! – SteveO7

관련 문제