export function addTableColum(refs, columObj = [{rowName: "", trId: "", colSpan: 0, callFun: Object}]) {
columObj.forEach(item => {
createColum(refs, item.rowName, item.trId, item.colSpan, item.callFun)
let table = refs.$el.querySelector('table')
let input = table.querySelectorAll('input')
input.forEach(inp => {
if (!inp.disabled) {
inp.onchange = function () {
addTableColum(refs, columObj)
}
}
})
})``
}
function createColum(refs, rowName, trId, colSpan, calFunc) {
let columns = refs.columns
let valObj = calFunc()
var tbody = refs.$el.querySelector('tbody')
let trIds = tbody.querySelector("#" + trId)
if (trIds != null) {
columns.forEach(keys => {
trIds.childNodes.forEach((tdNode, index) => {
if (keys.key === tdNode.key) {
tdNode.innerText = valObj[tdNode.key].toFixed(2)
}
})
})
} else {
let tr = createTr(trId)
let td = createTd(rowName)
td.colSpan = colSpan
tr.appendChild(td)
columns.forEach(keys => {
for (const valKey in valObj) {
if (keys.key === valKey) {
let nodeTd = createTd(valObj[valKey].toFixed(2))
nodeTd.key = valKey
tr.appendChild(nodeTd)
}
}
})
tbody.appendChild(tr)
}
}
function createTr(trId = "") {
let tr = document.createElement("tr");
tr.id = trId
const defClass = 'default-class'
const hoverClass = 'hover-class'
tr.className = defClass
tr.onmouseenter = function () {
tr.className = hoverClass
}
tr.onmouseleave = function () {
tr.className = defClass
}
return tr
}
function createTd(tdVal = "") {
let td = document.createElement("td");
td.className = 'poros-table-row-cell-break-word'
td.style = 'text-align: center;'
td.innerText = tdVal
return td
}

- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84