gh-5 Update datatable on coil/register status pages instead of appending to it
This commit is contained in:
parent
e780ced158
commit
0baf86c67f
|
@ -14,49 +14,67 @@ function timeStamp() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function coils(data) {
|
function coils(data) {
|
||||||
datable = document.getElementById('datatable')
|
if (document.getElementById("coilval_0") == null) {
|
||||||
|
for (n=0; n<data.length; n++) {
|
||||||
|
tablerow = document.createElement("tr")
|
||||||
|
fields = ["address", "value", "symbol", "description"]
|
||||||
|
|
||||||
for (n=0; n<data.length; n++) {
|
for (i=0; i<fields.length; i++) {
|
||||||
tablerow = document.createElement("tr")
|
td = document.createElement("td")
|
||||||
fields = ["address", "value", "symbol", "description"]
|
if (fields[i] == "value") {
|
||||||
|
value = document.createTextNode(Number(data[n][fields[i]]))
|
||||||
|
td.id = "coilval_" + n;
|
||||||
|
} else {
|
||||||
|
value = document.createTextNode(data[n][fields[i]])
|
||||||
|
}
|
||||||
|
td.appendChild(value)
|
||||||
|
tablerow.appendChild(td)
|
||||||
|
}
|
||||||
|
|
||||||
for (i=0; i<fields.length; i++) {
|
datatable.appendChild(tablerow)
|
||||||
td = document.createElement("td")
|
}
|
||||||
if (fields[i] == "value") {
|
} else {
|
||||||
value = document.createTextNode(Number(data[n][fields[i]]))
|
for (n=0; n<data.length; n++) {
|
||||||
} else {
|
coilval = document.getElementById("coilval_" + n);
|
||||||
value = document.createTextNode(data[n][fields[i]])
|
coilval.innerHTML = Number(data[n]["value"])
|
||||||
}
|
}
|
||||||
td.appendChild(value)
|
}
|
||||||
tablerow.appendChild(td)
|
|
||||||
}
|
|
||||||
|
|
||||||
datatable.appendChild(tablerow)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function registers(data) {
|
function registers(data) {
|
||||||
console.log(`${timeStamp()} Filling register data...`)
|
if (document.getElementById("regval_0") == null) {
|
||||||
datable = document.getElementById('datatable')
|
console.log(`${timeStamp()} Filling register data...`)
|
||||||
|
for (n=0; n<data.length; n++) {
|
||||||
|
tablerow = document.createElement("tr")
|
||||||
|
fields = ["address", "value", "symbol", "description"]
|
||||||
|
|
||||||
for (n=0; n<data.length; n++) {
|
for (i=0; i<fields.length; i++) {
|
||||||
tablerow = document.createElement("tr")
|
td = document.createElement("td")
|
||||||
fields = ["address", "value", "symbol", "description"]
|
if (fields[i] == "value" && data[n].type == "bitfield") {
|
||||||
|
value = document.createTextNode(data[n].bitfield)
|
||||||
|
} else {
|
||||||
|
value = document.createTextNode(data[n][fields[i]])
|
||||||
|
}
|
||||||
|
if (fields[i] == "value") {
|
||||||
|
td.id = "regval_" + n;
|
||||||
|
}
|
||||||
|
td.appendChild(value)
|
||||||
|
tablerow.appendChild(td)
|
||||||
|
}
|
||||||
|
|
||||||
for (i=0; i<fields.length; i++) {
|
datatable.appendChild(tablerow)
|
||||||
td = document.createElement("td")
|
}
|
||||||
if (fields[i] == "value" && data[n].type == "bitfield") {
|
console.log(`${timeStamp()} Done.`)
|
||||||
value = document.createTextNode(data[n].bitfield)
|
} else {
|
||||||
} else {
|
for (n=0; n<data.length; n++) {
|
||||||
value = document.createTextNode(data[n][fields[i]])
|
regval = document.getElementById("regval_" + n);
|
||||||
}
|
if (data[n].type == "bitfield") {
|
||||||
td.appendChild(value)
|
regval.innerHTML = data[n]["bitfield"]
|
||||||
tablerow.appendChild(td)
|
} else {
|
||||||
}
|
regval.innerHTML = data[n]["value"]
|
||||||
|
}
|
||||||
datatable.appendChild(tablerow)
|
}
|
||||||
}
|
}
|
||||||
console.log(`${timeStamp()} Done.`)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getData() {
|
function getData() {
|
||||||
|
@ -101,4 +119,4 @@ function getData() {
|
||||||
// Using setTimeout instead of setInterval to avoid possible connection issues
|
// Using setTimeout instead of setInterval to avoid possible connection issues
|
||||||
// There's no need to update exactly every 5 seconds, the skew is fine
|
// There's no need to update exactly every 5 seconds, the skew is fine
|
||||||
setTimeout(getData, 5*1000);
|
setTimeout(getData, 5*1000);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue