javascript - 创建一个更改日志表,记录下拉菜单中的更改

标签 javascript jquery html css

我想制作一个更改日志表,显示下拉菜单中是否有更改。 例如,我正在处理一个工作表,并且我有一个选择菜单结果,其中包含正、负、未知等选项。我希望如果任何人从正面变为负面或任何其他情况,它应该使用时间戳记录在更改日志表中。

目前我有一个适用于输入字段的版本,但当我在选择字段(下拉菜单)中进行更改时它不起作用。

这是我用于输入字段的代码,它工作正常。

$(document).on('focusin', 'input', function()
  {
    console.log("Saving value " + $(this).val());
    $(this).data('val', $(this).val());
   }
   ).on('change','input', function(){
    var prev = $(this).data('val');
    var current = $(this).val();
    var date1 = Date();
     if (prev !== current) {
         $(this).css("color", $currentDayColor);
         $specimenInfo = "";

    if((prev != current) && (prev!= null) && (prev != " ")){
    document.getElementById("demo").innerHTML = document.getElementById("demo").innerHTML + $specimenInfo + 'The Prev Value is :' + prev +' Which was changed on :'+ date1+'<br>';
    document.getElementById("demo2").innerHTML = document.getElementById("demo2").innerHTML + $specimenInfo + ' The Current Value is :' + current +' Which was changed on :'+ date1 + '<br>';
    console.log("Prev value " + prev);
    console.log("New value " + current);
    }
     };
});

最佳答案

如果您的带有输入字段的代码工作正常,那么您只需将选择器中的“输入”替换为“选择”。像这样:

$(document).on('focusin', 'select', function()
  {
    console.log("Saving value " + $(this).val());
    $(this).data('val', $(this).val());
   }
   ).on('change','select', function(){
    var prev = $(this).data('val');
    var current = $(this).val();
    var date1 = Date();
     if (prev !== current) {
         $(this).css("color", $currentDayColor);
         $specimenInfo = "";

    if((prev != current) && (prev!= null) && (prev != " ")){
    document.getElementById("demo").innerHTML = document.getElementById("demo").innerHTML + $specimenInfo + 'The Prev Value is :' + prev +' Which was changed on :'+ date1+'<br>';
    document.getElementById("demo2").innerHTML = document.getElementById("demo2").innerHTML + $specimenInfo + ' The Current Value is :' + current +' Which was changed on :'+ date1 + '<br>';
    console.log("Prev value " + prev);
    console.log("New value " + current);
    }
     };
});

关于javascript - 创建一个更改日志表,记录下拉菜单中的更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56693082/

相关文章:

javascript - import 在 Javascript 中到底是如何工作的

jquery - 我们可以在媒体查询中使用从 JQuery 中提取的图像高度吗?

jquery - 在 jQuery 中选择包含文本的元素

html - 当在 div 内时, ionic 页眉和 ionic 页脚的 ionic 4 高度错误

html - 居中主体内的静态侧边栏?

JavaScript 在提交 HTML 表单时显示新页面

javascript - 将给定 DIV 中的点转换为指向另一个 DIV

javascript - 使用 requirejs 时访问全局对象

javascript - 如何在两个不同事件的同一 HTML 控件(文本字段)上调用两个不同的 javascript/jquery 函数?

javascript - mouseover 和 mouseenter 事件有什么区别?