JS实现填报导入Excel后高亮显示重复数据

楼主
我是社区第238588位番薯,欢迎点我头像关注我哦~
1. 概述1.1 预期效果

填报导入excel后,用JS实现高亮显示重复的数据

1.2 实现思路

1)加一个EXCEL导入后的js,查找所要列的所有值作为数组。

2)对数据组中重复数据进行筛选,高亮显示出来。

2. 示例2.1 模板设计

1)模板主体设计如下:放置文本控件在A2,B2,如下图所示:

2)点击模板>模板web属性>填报页面设置 ,设置为该模板单独设置,使用工具栏,加入EXCL按钮,下方添EXCEL导入后事件,如下图所示:

3)JavaScript 代码如下:

setTimeout(function() {
        var a = [];
        var a1 = [];
        var a2 = [];
        var a3 = [];
        var a4 = [];

        for (var i = 1; i <= $("tr[tridx]").length - 1; i++) {
                var b = $("tr[tridx=" + i + "]").children().eq(0).html();
                if (b != undefined) {
                        a.push(b);
                }//eq(0)是对于A列进行数据取数的,对于其他列,eq(0)换里面序号即可,比如B列是eq(1),C列eq(2),依次类推
        }
        for (var i = 0; i <= a.length - 1; i++) {
                if (a1.indexOf(a) === -1) {
                        a1.push(a)
                } else {
                        a2.push(i)
                        a3.push(a)
                }
        }

        for (var i = 0; i < a.length; i++) {
                for (var x in a3) {
                        if (a == a3[x]) {
                                a4.push(i)
                        }
                }
        }


        for (var i = 0; i <= a4.length - 1; i++) {
                var c = a4 + 2;
                $('td[id^=A' + c + '-]').css({
                        'background': 'yellow'
                }); //设置列标题单元格的背景色,这里是对于A列进行设置背景色,对于其他列设置颜色,换id^=A成其他列即可
        }



}, 800)

2.2 效果预览

保存模版,选择 填报预览 ,点击 导入Excel ,效果如下图所示。


3. 模板下载

点击下载测试用模板和Excel文件: 附件.rar (9.53 KB, 下载次数: 104)





编辑于 2020-9-24 17:06  
分享扩散:

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

0回帖数 1关注人数 6129浏览人数
最后回复于:2021-1-6 12:09

返回顶部 返回列表