【问题标题】:Collapsing Table Row When Using TBody and JQuery Sortable使用 TBody 和 JQuery Sortable 时折叠表格行
【发布时间】:2014-09-02 00:36:05
【问题描述】:

这不是您对 JQuery UI 的 Sortable 的标准用法。我不是对表格行进行排序,而是对 tbody 标签进行排序,它一次移动多行。当您移动一组行时,行的列宽会折叠。通常你会使用帮助器来保持列宽......但是标准的在这种情况下不起作用。

这是jsFiddle

您可以在移动 tbody 选择时看到宽度折叠。

以下代码通常适用于帮助程序的单个行,但不适用于带有行的 tbody。

$('table').sortable({
    cursor: 'move',
    items: 'tbody',
    helper: function(e, ui) {
        ui.children().each(function() {
            $(this).width($(this).width());
        });
        return ui;
    },
    forcePlaceholderSize: true, 
    placeholder: 'placeholder'
});

有人可以帮忙想出一个在使用 Tbody 标签时保持宽度的助手吗?

【问题讨论】:

    标签: jquery jquery-ui jquery-ui-sortable


    【解决方案1】:

    不要问我为什么,但是 jQuery 删除了 <tr> 元素上的 display: table; 并将其替换为 display: block;。因此你的折叠宽度。只需使用 jQuery UI 添加到表格的帮助器类,同时将其拖动以更改显示。

    .ui-sortable-helper tr {
        display:table;
    }
    

    干杯!

    【讨论】:

    • 行得通!谢谢!虽然可能会在此处看到交错列“x,y”添加另一个奇怪的行为:updated jsFiddle 编辑:它也不会保持单个单元格的宽度。关于如何做到这一点的任何想法?
    • 不幸的是,经过进一步测试,这并不能解决所有问题。这是一个实现的屏幕截图。请注意,列不保持其宽度,并且 colspan=3 单元格折叠到其最小宽度。 imgur album
    • 你能提供 that 标记吗?如果不使用与您相同的东西,我不确定是否可以提供帮助。
    猜你喜欢
    • 1970-01-01
    • 2014-11-24
    • 2013-03-31
    • 1970-01-01
    • 2011-09-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-31
    相关资源
    最近更新 更多