createGuthonOptBtnsElement
function createGuthonOptBtnsElement (row, options) {
let btns = createElementFromHTML(`<ul class="item-table-subbtn gd-table-field-buttons"></ul>`)
options.forEach (({id = '', name = '', aliasName = '', page = this, onclick = () => console.log('onclick'), render = () => true, }) => {
let btnHtml = `
<li ${render(row) ? '' : 'style="display: none;"'}>
<button
class="btn btn-link gd_bluebtn "
type="button"
id="${id}-${row.rowIndex}"
title=""
${render(row) ? '' : 'disable'}
alias-name="${aliasName}"
>
<i class=""></i>
<span class="gd-button-text">${name}</span>
</button>
</li>
`
let btn = createElementFromHTML(btnHtml)
btn.onclick = () => {
onclick.call(page, row.data)
}
btns.appendChild(btn)
})
return btns
}
selfPage.createGuthonOptBtnsElement = createGuthonOptBtnsElement
function columnDefs (params) {
return [
{headerName: "其它列", field:"OTHER"},
{headerName: '操作列', pinned: 'right', cellRenderer:
function(row){
row.parent = params
row.data.parent = JSON.parse(JSON.stringify(params.data))
return $gp.createGuthonOptBtnsElement(row, [{
id: 'id',
name: 'name',
page: 'page',
onclick: 'onclick',
render: ({data: {STATE}, parent:{data:{STATE}}}) => true,
}])
}
},
]
}
createElementFromHTML
function createElementFromHTML(htmlString) {
const tempDiv = document.createElement('div')
tempDiv.innerHTML = htmlString.trim()
const newElement = tempDiv.firstChild
if (newElement && newElement.nodeType === 1) {
return newElement
} else {
return null
}
}
selfPage.createElementFromHTML = createElementFromHTML