【问题标题】:Editing a saved value with coffeescript from form input使用表单输入中的咖啡脚本编辑保存的值
【发布时间】:2015-03-28 22:59:27
【问题描述】:

我正在尝试根据用户输入的内容编辑页面上的数字,但我无法让它完全正确地工作。每次我让它的一部分工作时,另一部分就会中断......

我有一个表单输入字段,例如:

<input id="timecard_hours" type="number" placeholder="8"/>

在它下面我有一些显示他们已经拥有的小时数(我在这里硬编码为 5,但这通常是从数据库中获取的数字):

<div class="row">
  <h1 class="center" id="new_timecard_hours">5</h1>
  <p class="center">hours so far this week</p>
</div>

我要做的是获取它,以便当用户在输入字段中输入数字时,该数字将添加到页面底部已经显示的小时数中。我也希望这样,如果他们决定改变主意(在提交表单之前)并返回输入字段更改数字,新数字将被添加到旧的“new_timecard_hours”而不是新的他们已经添加了。

我目前的coffeescript是这样的:

 $ ->
   $('#timecard_hours').focus ->
     @previousHoursValue = +($('#timecard_hours').val())

   $('#timecard_hours').bind "keyup", ->
     newHours = +($('#timecard_hours').val())
     totalHours = +($('#new_timecard_hours').val()) + newHours - @previousHoursValue
     $('#new_timecard_hours').html(totalHours)

但这不是将它添加到“new_timecard_hours”中,它只是替换它。关于如何做到这一点的任何想法?

虽然在这个问题上花费了几个小时,但我发现一些东西表明我以某种方式保存了带有 .data 的“new_timecard_hours”,然后将其添加到输入字段值中......我并没有真正理解它并想出了这样的东西:

oldHours = $('#new_timecard_hours').data($('#new_timecard_hours').text())

但这似乎并没有做任何事情......

非常非常非常感谢任何想法或帮助!

【问题讨论】:

    标签: javascript jquery html forms coffeescript


    【解决方案1】:

    好的,如果其他人有类似的问题,我找到了解决方案...在咖啡脚本中,totolHours 应该是;

    totalHours = +($('#new_timecard_hours').text()) + newHours - @previousHours
    

    因为 new_timecard_hours 是从数据库中获取的,所以不是 .val(如果我没记错的话,它只是来自表单输入)。

    【讨论】:

      猜你喜欢
      • 2012-11-27
      • 2023-03-24
      • 2012-08-24
      • 2011-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-04
      • 1970-01-01
      相关资源
      最近更新 更多