FooTable 删除内部内容

FooTable removing inner content

我正在使用 fooTable<td> 元素的内部内容有问题。他们都被删除了。在以前的版本中不是这种情况,但是 v3 将其删除。例如,如果我添加一个按钮 <td><button class="online">Turn on</button></td> 它会被删除,以及 table 单元格的 class。

如何预防?

对于希望避免这种情况的任何人,可以在 footable.js 中进行更改。改变这个:

    $create: function(){
        if (this.created) return;
        (this.$el = F.is.jq(this.$el) ? this.$el : $('<td/>'))
            .data('value', this.value)
            .contents().detach().end()
            .append(this.format(this.value));

        this._setClasses(this.$el);
        this._setStyle(this.$el);

        this.$detail = $('<tr/>').addClass(this.row.classes.join(' ')).data('__FooTableCell__', this)
            .append($('<th/>', { text: this.column.title }))
            .append($('<td/>'));

        this.created = true;
    },

至:

$create: function(){
            if (this.created) return;
            (this.$el = F.is.jq(this.$el) ? this.$el : $('<td/>'))
                .data('value', this.value)
                .contents();

            this._setClasses(this.$el);
            this._setStyle(this.$el);

            this.$detail = $('<tr/>').addClass(this.row.classes.join(' ')).data('__FooTableCell__', this)
                .append($('<th/>', { text: this.column.title }))
                .append($('<td/>'));

            this.created = true;
        },

好吧,这可能不是最好的处理方式,但它符合我的目的。这会留下未格式化的内容,并保留链接、按钮、类 设置...

添加到@user4675957 的出色贡献:当您使用内部 HTML 时,详细信息(折叠 table)版本将以文本形式显示。这是因为它是这样加载的。

为防止出现这种情况,请修改 $create 函数中的这一行:

 .append($('<th/>', { text: this.column.title }))

.append($('<th/>').append(this.column.title))

我们在Header Data Parameter中设置怎么样

"data-type"="html"