如何从 bootstrap-table 的新行向 TD/TR 添加属性?

How to add attributes to TD/TR from new row of bootstrap-table?

目前我有项目使用bootstrap-table。添加具有属性的新行时出现问题。为了插入新行,我使用了以下代码:

    var row = ({
                  name: "test name",
                  type: "Organisation",
                  status: 'Active',
                  action: ''
                });
     $('#table-home').bootstrapTable('append', row);

我也想将属性添加到新行。我目前使用 jQuery 如下:

                var newRow = $('#table-home tr:last');
                var firstTd = newRow.find('td:first');
                var lastTd = newRow.find('td:last');
                newRow.attr("data-catid",categoryName);
                newRow.attr("data-assetdetail_id",data);
                firstTd.attr("data-remove-link","#");
                firstTd.attr("data-edit-link","#");

但在我再次 insert/append 新行后,该属性将丢失。在我对 table 进行排序后,我的属性也会丢失。实际上如何将属性添加到 bootstrap-table?

的新行

我已经阅读了所有文档,但我找不到如何执行此操作。但是今天,在我尝试使用 console.log 检查 bootstrap-table 中每一行内的 object/data 之后,我用下面的代码解决了我的问题:

            const row= ({
                    name: RiskName,
                    type: "Risk Type",
                    status: 'Active',
                    action: '',
                    _data:({"uniqueid":data.id,
                        "key":0,
                        "id":data.id,
                        "status":"Active",
                        "type": "Risk Type",
                    }),
                    _action_data:({"delete-link":"",
                        "edit-name":RiskName,
                    })
                });

_data 是行的数据属性(示例 <tr data-id="val">

_action_data 是名为 action 的列的数据属性(示例结果 <td data-tag="val">

我必须回答这个问题以提醒自己。

参考:https://bootstrap-table.com/docs/api/table-options/

rowAttributes: function (row, index) {
    return { "data-id": row.id };
},

这会将 data-id 添加到 tr 元素