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"
我正在使用 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"