好吧,我知道我的标题有点晦涩,但它最能描述我遇到的问题。
本质上,我有一个用户列表,并且希望能够使用 AJAX 在线编辑他们的信息。
由于用户显示在行中,我使用部分来呈现数据和表单(最初将由 ajax 隐藏),但是,当当前呈现行时,只有最后一项填充了表单的字段。
我怀疑这与所有表单字段都具有相同的 id 并且混淆 DOM 的事实有关。但我不知道如何确保 id 是唯一的。
这是一个小例子:
在我看来:
<%= render :partial => 'shared/user', :collection => @users %>
我的部分(分解为表单)注意到我使用的是局部变量“user”
<% form_for user, :html => {:multipart => true} do |f| -%>
<%= f.label :name, "Name*" %>
<%= f.text_field :title, :class => "input" %>
<%= f.label :Address, "Address" %>
<%= f.text_field :address, :class => "input" %>
<%= f.label :description, "Description*" %>
<%= f.text_area :description, :class => "input" %>
<% end -%>
当呈现 html 时,每个表单都有一个唯一的 id(用于用户的 id),但元素本身都具有相同的 id,并且实际上只有最后一个用户表单被填充了值。
有没有人有任何想法?:)
提前致谢!