如何在创建/更新之前更新模型对象?

时间:2011-06-20 15:49:56

标签: javascript ruby-on-rails

这是我的大铁杆新手。我有另一个问题。

这是我对_care_point.html.erb

的偏爱
<div id='<%=dom_id(care_point) %>' class='draggable node_chin'>
  <div id=<%="node_#{care_point.id}" %> class='node'><%= care_point.body %>
  </div>
  <textarea class='node_input'><%= care_point.body %></textarea>
  <%= link_to 'Close', [care_map, care_point], :method => :post, :remote => true, :class => 'close' %>
  <%= link_to 'Delete', [care_map, care_point], :confirm => "Are you sure?", :method => :delete, :remote => true, :class => 'delete' %>
</div>

当我单击“关闭”链接时,请求将按预期发送到服务器。但是所有字段都是null。如何确保模型对象在发送到服务器之前保持更新?我是否必须使用表单功能,或者我可以用Javascript以某种方式更新它?

干杯

1 个答案:

答案 0 :(得分:0)

没有理由不使用表格。只需将字段括在表单中并添加提交按钮即可。

<%= form_for [care_map, care_point], :remote => true do |f| %>
  <%= f.text_area :body %>
  <%= f.submit "Close" %>
<% end %>

如果您真的想要关闭链接而不是按钮,则可以使用javascript覆盖它的点击事件并通过Ajax发送表单。