我正在使用 simple_nested_form,并且在我的客户账单表格中有这个
<%= simple_nested_form_for @customer_bill do |f| %>
<%= f.error_messages %>
<%= f.label :employee_id %>
<%= f.collection_select :employee_id, Employee.all,:id,:name, {:prompt => "Select Employee"}, :style => 'width:205px;' %><br />
<%= f.label :date %>
<%= f.datepicker :date, :dateFormat => 'dd MM, yy', :showOn => "both", :buttonImage => "../assets/calendar.gif", :buttonImageOnly => true, :changeMonth => true, :changeYear => true, :placeholder => "Click on the Calender" %><br/>
<p><%= f.link_to_add "Add Product", :customer_bill_line_items %> </p>
<p><%= f.submit %></p>
<% end %>
在我单击“添加产品”后,呈现以下部分
<%= javascript_include_tag 'calculations' %>
<hr/>
<%= f.hidden_field :user_id, :value => current_user.id %>
<%= f.hidden_field :customer_bill_id %>
<%= f.label :product_id %>
<%= f.collection_select :product_id,Product.all,:id,:title, :prompt => "Select a Product", :style => 'width:150px;' %> <%= f.link_to_remove "Remove Product"%>
<br/>
<p class="fields">
<%= f.input :price, :class =>"price" %>
<br/>
<%= f.input :quantity, :class =>"qty" %><br/>
<%= f.input :amount, :class =>"amount"%><br/>
</p>
我的 Calculations.js 中有这个
jQuery(document).ready(function(){
jQuery(".price, .qty").keyup(function() {
var p = jQuery(".price").val();
var q = jQuery(".qty").val();
jQuery(".amount").val(q * p);
});
});
</p>
现在问题是第一次当我点击“添加产品”并输入“价格”和“数量”时,金额在 js 文件中计算并显示在“金额”字段中,当我第二次点击添加产品时,第一个的计算被渲染,似乎 js 文件在每个“金额”字段中显示第一次计算的值
似乎是什么问题?每次我调用部分时,我该怎么做才能进行正确的计算?急需帮助。提前致谢