Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/72.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
Javascript 2个表,需要为每个匹配行设置具有最大高度的行_Javascript_Jquery - Fatal编程技术网

Javascript 2个表,需要为每个匹配行设置具有最大高度的行

Javascript 2个表,需要为每个匹配行设置具有最大高度的行,javascript,jquery,Javascript,Jquery,我有2个html表格,我需要有相同高度的每一行 因此,如果表1的第3行的高度为25,则表2的第3行的高度应为25 无论哪个匹配行的高度最大,那么两行的高度应该相同 我该怎么做 我知道如何遍历这些行,如: $("table1 tr").each(function() { }); $("table2 tr").each(function() { }); 您可以这样做(假设两个表的行数相等): 你可以在这里看到一个例子 当设置高度时,需要考虑行的边界,因为它将影响高度。我的例子不包含这种代码,

我有2个html表格,我需要有相同高度的每一行

因此,如果表1的第3行的高度为25,则表2的第3行的高度应为25

无论哪个匹配行的高度最大,那么两行的高度应该相同

我该怎么做

我知道如何遍历这些行,如:

$("table1 tr").each(function() {

});

$("table2 tr").each(function() {

});

您可以这样做(假设两个表的行数相等):


你可以在这里看到一个例子

当设置高度时,需要考虑行的边界,因为它将影响高度。我的例子不包含这种代码,但如果设置边框,可能需要考虑。

    $(document).ready(function() {
        var $table1 = $("#Table1");
        var $table2 = $("#Table2");
        $.each($table1.find("tr"), function(i, o) {
            var $t1r = $(o);
            var $t2r = $table2.find('tr').eq(i);
            if ($t2r != undefined) {
                $t1r.height($t1r.height() > $t2r.height() ? $t1r.height() : $t2r.height());
                $t2r.height($t1r.height());
                console.log("t1:r%s | t2:r%s", $t1r.height(), $t2r.height());
            } else {
              return false;
            }
        });
    });​

行数是1比1吗?也就是说,表1和表2是否总是有相同的行数?我以前回答过一个类似的问题:不同之处在于,这将设置两个表中所有行的高度,而不仅仅是最高的。@shmiddy是的,行数相同。为什么不使用通过
作为参数传递的索引和元素。each()
的功能
.each(函数(索引,元素))
您还可以检查每个循环之前的行数,以查看哪个循环有更多行。(虽然从技术上讲,您只需要在较少的行上循环,所以我不确定这是否必要)我更新了,现在它会在尝试更新任何内容之前检查是否存在相应的行。我想现在所有的基地都被覆盖了。谢谢你的建议实际上,你应该
返回false如果第二个表中没有行。如果表2没有更多匹配行,则没有理由继续在表1上迭代。抱歉,太快拒绝了您的编辑。相应地更新代码
    $(document).ready(function() {
        var $table1 = $("#Table1");
        var $table2 = $("#Table2");
        $.each($table1.find("tr"), function(i, o) {
            var $t1r = $(o);
            var $t2r = $table2.find('tr').eq(i);
            if ($t2r != undefined) {
                $t1r.height($t1r.height() > $t2r.height() ? $t1r.height() : $t2r.height());
                $t2r.height($t1r.height());
                console.log("t1:r%s | t2:r%s", $t1r.height(), $t2r.height());
            } else {
              return false;
            }
        });
    });​