Ruby on rails 当选中单选按钮时,RubyonRails将降低成本
我正在通过创建一个电子商务应用程序来学习RubyonRails 我的问题是,如果客户选择了Ruby on rails 当选中单选按钮时,RubyonRails将降低成本,ruby-on-rails,ruby,radio-button,e-commerce,Ruby On Rails,Ruby,Radio Button,E Commerce,我正在通过创建一个电子商务应用程序来学习RubyonRails 我的问题是,如果客户选择了店内提货,或者总金额高于100美元,我将如何删除配送成本 因此,当在店内提货时或当总金额大于100美元时应扣除送货成本 我使用了if和else来获得所需的结果。但是通过使用该选项,当选择单选按钮时,总成本不会更新 这是不带if和else <tr> <th><p>Products Total: </p></th>
店内提货
,或者总金额高于100美元
,我将如何删除配送成本
因此,当在店内提货时
或当总金额大于100美元时
应扣除送货成本
我使用了if
和else
来获得所需的结果。但是通过使用该选项,当选择单选按钮时,总成本
不会更新
这是不带if
和else
<tr>
<th><p>Products Total: </p></th>
<th><p>Delivery Cost: </p></th>
<th><p>Total Cost: </p></th>
</tr>
<tr>
<td><p ><%= @cart.total_price_usd %></p></td>
<td><p ><%= @del_cost_usd %> </p></td>
<td><p ><%= @cart.total_price_usd + @del_cost_usd%></p></td>
</tr>
<div>
<li><%= f.radio_button :pick_up, "1", checked: false, class: 'delivery-options', data: { question: "Pick up items in store" } %>
<%= f.label :pick_up, "Pick up items in store" %></li>
<li><%= f.radio_button :pick_up, "0", checked: true, class: 'delivery-options' , data: { question: "Have items sent by mail" } %>
<%= f.label :pick_up, "Have items sent by mail", class: '' %></li>
</div>
产品总数:
交付成本:
总成本:
有人能告诉我我想要的结果吗
对于有经验的人来说,这可能是简单的要点
短暂性脑缺血发作
Codegirl我有一个解决这个问题的计划
为显示的DOM标签和交货成本值指定一个类,以切换其显示属性:
<p class="delivery-cost-fields">Delivery Cost: </p>
<p class="delivery-cost-fields"><%= @del_cost_usd %> </p>
希望这有帮助。可能有人能够直接回答。我不是很流利地给你一个“我头脑中的”答案,而是查找“使用JavaScript隐藏元素”。我在我的一些应用程序中使用它也是为了同样的目的。我喜欢这个。我很想知道它是否有效。漂亮低调。@NhãHuỳnh,除了行``之外,这是有效的,
id=“交货成本”似乎对这行没有任何影响。为什么呢?“我该怎么做才能让它消失呢?”codegirl我刚刚修正了我的答案。我们应该切换交货成本的description p标签和value p标签的display属性。上一篇我只是让描述标签消失了D@NhãHuỳ新罕布什尔州,谢谢,这两个领域正在消失。但是送货成本仍然会增加到总成本中,就像在这一行中一样,当选择在商店提货时,是否可以不将总价格增加到总成本中?我想这可以从您的后端解决,或者您应该使用本地计算或ajax之类的工具来解决此问题:D
<%= f.radio_button :pick_up, "1", checked: false, class: 'delivery-options', data: { question: "Pick up items in store" }, onchange: "$('.delivery-cost-fields').toggleClass('hidden', true)" %>
<%= f.radio_button :pick_up, "0", checked: true, class: 'delivery-options' , data: { question: "Have items sent by mail" }, onchange: "$('.delivery-cost-fields').toggleClass('hidden', false)" %>
.hidden {display: none;}