Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 根据不同表格上的值高亮显示表格单元格_Jquery - Fatal编程技术网

Jquery 根据不同表格上的值高亮显示表格单元格

Jquery 根据不同表格上的值高亮显示表格单元格,jquery,Jquery,我的问题是我有两个表,每个表都有一个单元格,内容是一个输入字段,它们需要在不同的表中匹配相同的精确值。 当值不匹配时,我需要突出显示不匹配的位置 用户只有在点击按钮提交时才会收到此信息,如果值不匹配,则需要突出显示,并且只有当值匹配时,用户才能转到下一页 我不能突出显示,我需要改进这段代码 这就是我目前所做的: $(".buttonThatUserClick").on('click', function() { var bdn = $('input[name*=returnitemqt

我的问题是我有两个表,每个表都有一个单元格,内容是一个输入字段,它们需要在不同的表中匹配相同的精确值。 当值不匹配时,我需要突出显示不匹配的位置

用户只有在点击按钮提交时才会收到此信息,如果值不匹配,则需要突出显示,并且只有当值匹配时,用户才能转到下一页

我不能突出显示,我需要改进这段代码

这就是我目前所做的:

$(".buttonThatUserClick").on('click', function() {

    var bdn = $('input[name*=returnitemqty]'); /* table A */
    var lgl = $('input[name*=replacementitemqty]'); /* table B */
    var arr = [];
    var brr = [];
    $(bdn).each(function() {
        arr.push($(this).val());
    });
    $(lgl).each(function() {
        brr.push($(this).val());
    });

    var is_same = arr.length === brr.length && arr.every(function(element, index) {
        return element === brr[index]
    });

    if(is_same === false) {
         console.log('false')
    } else {
        console.log('woop')
    }

})
编辑 最后由于
.every()
在找到第一个
false
时停止…
必须在单独的回路中进行高亮度照明。。。让另一个比较保持原样

// Cell check and color hightlight
for(i=0;i<arr.length;i++){
  if(arr[i]!=brr[i]){
    lgl.eq(i).css({"background-color":"#FF0000"});   // Red on error
    bdn.eq(i).css({"background-color":"#FF0000"});
  }
}
//单元格检查和高亮度着色
对于(i=0;i

编辑 最后…因为
.every()
在找到第一个
false
时停止…
必须在单独的循环中进行高亮显示…并保持其他比较不变

// Cell check and color hightlight
for(i=0;i<arr.length;i++){
  if(arr[i]!=brr[i]){
    lgl.eq(i).css({"background-color":"#FF0000"});   // Red on error
    bdn.eq(i).css({"background-color":"#FF0000"});
  }
}
//单元格检查和高亮度着色

对于(i=0;i

以下是您问题的解决方案:

$(“.productable_txt”)。单击(函数(){
$('input[name*=returnitemqty]')。每个(函数(){
en=$(this.attr('name').replace('returnitemqty','');
$(this.css({“背景色”:“#FFFFFF”});
if($(this).val()==$('input[name=replacementitemqty'+en+']).val()){
console.log('Matched!');
}否则{
//警惕(“出了什么事”);
$(this.css({“背景色”:“#FF0000”});
//返回false;
}
});
})

以下是您问题的解决方案:

$(“.productable_txt”)。单击(函数(){
$('input[name*=returnitemqty]')。每个(函数(){
en=$(this.attr('name').replace('returnitemqty','');
$(this.css({“背景色”:“#FFFFFF”});
if($(this).val()==$('input[name=replacementitemqty'+en+']).val()){
console.log('Matched!');
}否则{
//警惕(“出了什么事”);
$(this.css({“背景色”:“#FF0000”});
//返回false;
}
});
})

你能分享你的html代码吗?遗憾的是,这与工作相关,而且它很大。基本上是两个表(A和B)系统根据用户数据生成不同的行。TR中有一些TD,这个TD和输入需要与另一个表TD匹配。从代码中可以看到,它们有不同的名称。BDN来自表a,LGL来自表B。共享一些示例代码或为相同的代码创建JSFIDLE。用户将单击哪个按钮。Idigit find any button with productable_txt classes你能分享你的html代码吗?遗憾的是,这是一个与工作相关的大按钮。基本上是两个表(A和B)系统根据用户数据生成不同的行。TR中有一些TD,这个TD和输入需要与另一个表TD匹配。从代码中可以看到,它们有不同的名称。BDN来自表a,LGL来自表B。共享一些示例代码或为相同的代码创建JSFIDLE。用户将单击哪个按钮。Idigit find any button with productable_txt classis如果我有1个以上的TR要检查,则仅验证第一个..其他人不检查组…保留两个表高亮显示。如果我有1个以上的TR要检查,则仅验证第一个..其他人不检查组…保留两个表高亮显示。此行:$('input[name=replacementitemqty'+en+')).css({“背景色”:“#FF0000”);此行:$('input[name=replacementitemqty'+en+']).css({“背景色”:“#FF0000”);