SD1*_*990 3 jquery ruby-on-rails form-submit ruby-on-rails-3
似乎eveyone有这个问题,但没有人有一个非专业人士的条款答案,甚至没有适当的解决方案.
我有一个使用ajax提交表单的表单,并自动将其添加到文本字段下面的列表中.表单提交两次,因此我有两个相同的(除了ID)记录.更糟糕的是当你试图删除它不会更新页面,因为它试图删除相同的记录两次.
我希望有人在那里有一个很好的答案...顺便说一下我是铁杆的新手.码:
index.html.erb
<h1>SSCC</h1>
<div id="orderline_form">
<%= render 'form' %>
</div>
<ul id="orderlines">
<%= render :partial => @orderlines.reverse %>
</ul>
Run Code Online (Sandbox Code Playgroud)
_form.html.erb
<%= form_for(@orderline, :remote => true) do |f| %>
<div class="field">
<%= f.label :Order_ID %>
<%= f.text_field :order_id %><br/>
<%= f.label :SSCC %>
<%= f.text_field :sscc %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
Run Code Online (Sandbox Code Playgroud)
_order_line.html.erb
<%= content_tag_for(:li, order_line) do %>
<%= order_line.id %> |
<%= order_line.order_id %> |
<%= order_line.sscc %>
(<%= link_to 'Delete', order_line, :confirm => 'Are you sure?',
:method => :delete, :remote => true %>)
<% end %>
Run Code Online (Sandbox Code Playgroud)
create.js.erb
$('#orderlines').prepend('<%= escape_javascript(render(@orderline))%>');
$('#orderlines > li:first ').effect('highlight', {}, 3000);
$('#orderline_form > form')[0].reset();
Run Code Online (Sandbox Code Playgroud)
destroy.js.erb
$('#<%= dom_id(@orderline) %>').css('background', 'red');
$('#<%= dom_id(@orderline) %>').hide("fade", {}, 1500);
Run Code Online (Sandbox Code Playgroud)
小智 15
在我看来,"application.js"存储了两次(.../public/assets/application.js和.../app/assets/javascripts/application.js).Rails 3.2.1 Asset管道编译它并创建另一个.检查并删除不需要的内容.
请记住,您可能已经有其他重复的资产,您刚开始注意到这一点,因为jQuery使其显而易见.
这个链接帮助了我:
| 归档时间: |
|
| 查看次数: |
6081 次 |
| 最近记录: |