小编Ben*_*lch的帖子

为什么我的CoffeeScript if/else语句不起作用?

当有人更改选择选项时,我一直在尝试更新总价.这是我正在使用的select元素:

<select id="payment_talks_purchased" name="payment[talks_purchased]">
  <option value="1">One</option>
  <option value="2">Three</option>
</select>
Run Code Online (Sandbox Code Playgroud)

这是我正在使用的jQuery:

jQuery(document).ready(function() {
  var price = $(".total-price span.price")
  var save = $(".savings")
  $("#payment_talks_purchased").change(function() {
    var selection = $("#payment_talks_purchased").val()
    if (selection == 2) {
      price.html("$12");
      save.css("visibility", "visible");
    } else if (selection == 1) {
      price.html("$5");
      save.css("visibility", "hidden");
    }
  });  
});
Run Code Online (Sandbox Code Playgroud)

它完美地运作.它将价格更改为12美元并显示折扣消息.如果我将选择选项更改回One/1,它会将文本更改回$ 5并删除折扣消息.

我将其转换为CoffeeScript,但它只在我进行第一次更改时才有效.价格已更新.但是,当我尝试将其更改回选项1时,它不会更新.

jQuery ->
  price = $(".total-price span.price")
  save = $(".savings")
  select = $("#payment_talks_purchased")
  select.change ->
    selection = select.val()
    if selection = 2
      price.html "$12"
      return save.css "visibility", "visible"
    else if …
Run Code Online (Sandbox Code Playgroud)

if-statement coffeescript

15
推荐指数
2
解决办法
4万
查看次数

标签 统计

coffeescript ×1

if-statement ×1