使用Jquery过滤器检查重复的列数据

屁股

请注意,我的前两个表数据(Apple和Orange)设置为只读。而且我确实具有动态添加行的功能。看到这个演示演示

如果用户单击Save button,则所有input field从数据库中检测到重复数据或从动态添加的行中最后一次检测到重复数据的用户,border-color将变为红色。

$("#save").off("click").on("click",function(){
var $rows = $('#myTable tbody tr:not(:hidden)');
        $rows.each(function(){
        var $id = $(this).find('td input[type=\'text\']');
            alert($id.val());
        //Im stuck here, for checking column data is duplicate.
      });
});

我期待使用Jquery过滤器,像这样:

$( "li" ).filter( "DUPLICATE DATA()" ).css( "border-color", "red" );
密码

我假设您要定位“名称”列,尽管您可以轻松地将其更改为定位所有列。

基本上,您要遍历所有input元素,并保留对您已经查看过的值的引用:

$("#save").off("click").on("click",function(){
    var existing = [];
    var duplicates = $('#myTable td:nth-child(3) input').filter(function() {
        var value = $(this).val();
        if (existing.indexOf(value) >= 0) {
            return $(this);
        }
        existing.push(value);
    });
    duplicates.closest('tr').css('background-color', 'red');
});

JSFiddle

编辑:为了避免将只读行标记为重复行,该过程不太直接

$("#save").off("click").on("click",function(){
    // Clear status of all elements
    $('#myTable tr').css('background-color', 'none');

    // Get all values first (Apple, Orange, etc) as strings
    var allValues = $('#myTable td:nth-child(3) input').map(function() {
        return $(this).val();
    }).toArray();

    // Iterate unique values individually, to avoid marking a read-only input as duplicate
    var processedValues = [];
    for (var i = 0; i < allValues.length; i++) {
        var value = allValues[i];
        if (value != '' && processedValues.indexOf(value) >= 0) continue;
        var inputs = $('#myTable td:nth-child(3) input').filter(function() { return $(this).val() == value; });
        // Check if this value is in one of the readonly
        var readOnlyInput = inputs.filter(function() { return $(this).is('[readonly]'); });
        if (readOnlyInput.length) {
            inputs.not(readOnlyInput).closest('tr').css('background-color', 'red');
        } else {
            inputs.not(':first').closest('tr').css('background-color', 'red');
        }
        processedValues.push(value);
    }
});

更新了JSFiddle

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery:检查数据过滤器并替换空格

来自分类Dev

jQuery:检查数据过滤器并替换空格

来自分类Dev

使用MySQL数据重复过滤器搜索

来自分类Dev

列数据过滤器

来自分类Dev

Linq 过滤器返回的数据重复

来自分类Dev

如何过滤数据过滤器jQuery

来自分类Dev

jQuery使用过滤器提取数据

来自分类Dev

WinForms XtraGrid列过滤器检查的列表框实际数据

来自分类Dev

如何使用Jquery过滤器?

来自分类Dev

如何删除交叉过滤器中的重复数据?

来自分类Dev

jQuery-使用不同输入的多个过滤器过滤数据属性

来自分类Dev

使用特定于列的重复过滤器在Python中将行追加到CSV

来自分类Dev

如何使用为计算列指定的过滤器过滤剑道网格数据

来自分类Dev

MySQL过滤器重复其他列匹配

来自分类Dev

使用过滤器时的重复绝对$索引

来自分类Dev

AngularJS在过滤器中使用$索引重复

来自分类Dev

带有列过滤器的jQuery数据表中的全选复选框

来自分类Dev

jQuery数据表Columnfilter-外部过滤器不适用于隐藏列

来自分类Dev

ngGrid如何在多个列(例如Excel数据过滤器)上创建过滤器?

来自分类Dev

使用多个过滤器值过滤数据

来自分类Dev

数组过滤器,使用键过滤数据

来自分类Dev

使用AngularJS过滤器过滤数据。如何遍历对象?

来自分类Dev

使用jQuery使用数据过滤器类计算li元素

来自分类Dev

如何在过滤器数据表中使用全局过滤器

来自分类Dev

带有搜索输入的jQuery Json过滤器,无需使用任何过滤器插件

来自分类Dev

如何使用PySpark在数据框中删除基于多个过滤器的列?

来自分类Dev

是否可以将独立过滤器与列过滤器一起使用?

来自分类Dev

基于数据属性的jQuery过滤器元素

来自分类Dev

jQuery数据表SearchPane过滤器值

Related 相关文章

  1. 1

    jQuery:检查数据过滤器并替换空格

  2. 2

    jQuery:检查数据过滤器并替换空格

  3. 3

    使用MySQL数据重复过滤器搜索

  4. 4

    列数据过滤器

  5. 5

    Linq 过滤器返回的数据重复

  6. 6

    如何过滤数据过滤器jQuery

  7. 7

    jQuery使用过滤器提取数据

  8. 8

    WinForms XtraGrid列过滤器检查的列表框实际数据

  9. 9

    如何使用Jquery过滤器?

  10. 10

    如何删除交叉过滤器中的重复数据?

  11. 11

    jQuery-使用不同输入的多个过滤器过滤数据属性

  12. 12

    使用特定于列的重复过滤器在Python中将行追加到CSV

  13. 13

    如何使用为计算列指定的过滤器过滤剑道网格数据

  14. 14

    MySQL过滤器重复其他列匹配

  15. 15

    使用过滤器时的重复绝对$索引

  16. 16

    AngularJS在过滤器中使用$索引重复

  17. 17

    带有列过滤器的jQuery数据表中的全选复选框

  18. 18

    jQuery数据表Columnfilter-外部过滤器不适用于隐藏列

  19. 19

    ngGrid如何在多个列(例如Excel数据过滤器)上创建过滤器?

  20. 20

    使用多个过滤器值过滤数据

  21. 21

    数组过滤器,使用键过滤数据

  22. 22

    使用AngularJS过滤器过滤数据。如何遍历对象?

  23. 23

    使用jQuery使用数据过滤器类计算li元素

  24. 24

    如何在过滤器数据表中使用全局过滤器

  25. 25

    带有搜索输入的jQuery Json过滤器,无需使用任何过滤器插件

  26. 26

    如何使用PySpark在数据框中删除基于多个过滤器的列?

  27. 27

    是否可以将独立过滤器与列过滤器一起使用?

  28. 28

    基于数据属性的jQuery过滤器元素

  29. 29

    jQuery数据表SearchPane过滤器值

热门标签

归档