检查先前的值是否已更改,如果已更改,则将先前的值先于更改后放入日志表中,然后在屏幕上打印该日志表

时间:2019-05-16 21:02:14

标签: javascript jquery html

我正在尝试工作表中的用户可以在其中更改值,但是我希望当用户更改值时,先前的值应存储在某个地方,然后可以在屏幕上的更改日志表上打印

我尝试了以下代码

$("classPreviousValue").on('focusin', function() {
    $(this).data('val', $(this).val());

});

$("classPreviousValue").on('change', function() {
  var $prev = $(this).data('val');
  var $current = $(this).val();
  if ($prev !== $current) {
      alert ("Things changed");
    $(this).css("color", $currentDayColor);
    $("#divChangeLog").html($("#divChangeLog").html() + "<br>Value changed from $prev");
 };


    });   

1 个答案:

答案 0 :(得分:0)

课程以句点.classPreviousValue而不是classPreviousValue开始。并尝试将on('focusin'切换为each以遍历所有它们,而无需用户交互。同样在if语句的末尾,将data-val更改为新值。

$(".classPreviousValue").each(function() {
    $(this).data('val', $(this).val());
});

$(".classPreviousValue").on('change', function() {
  var $prev = $(this).data('val');
  var $current = $(this).val();
  if ($prev !== $current) {
      alert ("Things changed");
    $(this).css("color", $currentDayColor);
    $("#divChangeLog").html($("#divChangeLog").html() + "<br>Value changed from " + $prev);
    $(this).data('val',$current); //set data-val to new value
   };
 });