fix: InlineForm submit绑定修正,wid+getWidgetById替代this
This commit is contained in:
parent
60e9e3c9b3
commit
5b9619c850
@ -31,10 +31,11 @@
|
||||
},
|
||||
"binds": [
|
||||
{
|
||||
"wid": "billing_form",
|
||||
"event": "submit",
|
||||
"target": "billing_tabular",
|
||||
"actiontype": "script",
|
||||
"script": "this.render(params); const statsResp = await fetch('{{billing_url}}?start_date=' + params.start_date + '&end_date=' + params.end_date); const statsData = await statsResp.json(); const statsText = bricks.getWidgetById('billing_stats'); if (statsText && statsData.stats) { statsText.dom_element.textContent = '总条数: ' + statsData.stats.total_count + ' | 借方合计: ¥' + parseFloat(statsData.stats.debit_sum).toFixed(2) + ' | 贷方合计: ¥' + parseFloat(statsData.stats.credit_sum).toFixed(2); } const dlBtn = bricks.getWidgetById('billing_download_btn'); if (dlBtn) { dlBtn.dom_element.style.display = 'inline-block'; dlBtn.dom_element.onclick = async function() { const resp = await fetch('{{download_url}}?start_date=' + params.start_date + '&end_date=' + params.end_date); const data = await resp.json(); if (data.status === 'ok') { const byteChars = atob(data.data.content); const byteNumbers = new Array(byteChars.length); for (let i = 0; i < byteChars.length; i++) { byteNumbers[i] = byteChars.charCodeAt(i); } const byteArray = new Uint8Array(byteNumbers); const blob = new Blob([byteArray], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'}); const url = window.URL.createObjectURL(blob); const a = document.createElement('a'); a.href = url; a.download = data.data.filename; document.body.appendChild(a); a.click(); document.body.removeChild(a); window.URL.revokeObjectURL(url); } }; }"
|
||||
"target": "billing_form",
|
||||
"script": "var dv = bricks.getWidgetById('billing_tabular', bricks.app.root); dv.render(params); fetch('{{billing_url}}?start_date=' + params.start_date + '&end_date=' + params.end_date).then(function(r){return r.json()}).then(function(d){var t=bricks.getWidgetById('billing_stats',bricks.app.root);if(t&&d.stats)t.dom_element.textContent='总条数: '+d.stats.total_count+' | 借方合计: ¥'+parseFloat(d.stats.debit_sum).toFixed(2)+' | 贷方合计: ¥'+parseFloat(d.stats.credit_sum).toFixed(2);var b=bricks.getWidgetById('billing_download_btn',bricks.app.root);if(b){b.dom_element.style.display='inline-block';b.dom_element.onclick=function(){fetch('{{download_url}}?start_date='+params.start_date+'&end_date='+params.end_date).then(function(r){return r.json()}).then(function(d){if(d.status==='ok'){var c=atob(d.data.content);var n=new Array(c.length);for(var i=0;i<c.length;i++)n[i]=c.charCodeAt(i);var a=new Uint8Array(n);var bl=new Blob([a],{type:'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'});var u=window.URL.createObjectURL(bl);var l=document.createElement('a');l.href=u;l.download=d.data.filename;document.body.appendChild(l);l.click();document.body.removeChild(l);window.URL.revokeObjectURL(u)}})}}})"
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user