Как прочитать массив / данные из другого html-файла в jQuery и создать динамическую таблицу (веб-сервер PLC) - PullRequest
1 голос
/ 08 октября 2019

Я работаю с контроллерами ПЛК. Я создал веб-сервер на ПЛК, и я хочу показать блок данных в HTML. Я уже знаю, что должен написать:

 :="webdata".counter[0]:

Но у меня есть 2 проблемы. 1) Я хочу загрузить эти данные в таблицу, и здесь есть проблема. Когда я пытаюсь:

for(var r = 0; r < 3; r++) {  
     document.write(":=\"webdata\".test[" + r + "]:")
};

На странице ничего нет (в ПЛК у меня есть массив 55). Итак, я создал массив и таблицу

var edr = [
    {
        "Pallet": ":="webdata".test[0]:",
        "code": "8501H984P",
        "Cycles": ":="pallet_data".cycles[0]:"
    },
    {
        "Pallet": ":="webdata".test[1]:",
        "code": "8501H984P",
        "Cycles": ":="pallet_data".cycles[1]:"
    }
]
        var col = [];
        for (var i = 0; i < edr.length; i++) {
            for (var key in edr[i]) {
                if (col.indexOf(key) === -1) {
                    col.push(key);
                }
            }
        }  
        var table = document.createElement("table");
        var tr = table.insertRow(-1);                   // TABLE ROW.
        for (var i = 0; i < col.length; i++) {
            var th = document.createElement("th");      // TABLE HEADER.
            th.innerHTML = col[i];
            tr.appendChild(th);
        }
        for (var i = 0; i < edr.length; i++) {
            tr = table.insertRow(-1);
            for (var j = 0; j < col.length; j++) {
                var tabCell = tr.insertCell(-1);
                tabCell.innerHTML = edr[i][col[j] ];
            }
        }
        var divContainer = document.getElementById("showData");
        divContainer.innerHTML = "";
        divContainer.appendChild(table);

И это работает, но я должен напечатать весь массив. Есть ли решение этой проблемы?

2) Также для обновления данных я использую jQuery

        $(document).ready(function(){
            $.ajaxSetup({ cache: false });
            setInterval(function() {
                $.get("IO.html", function(result){
                    $('#counter').text(result.trim());
                });
            },3000);
        });

, но мне нужно создать html-файл с :="webdata".test[0]: внутри. Я не могу найти решение для извлечения только части HTML-документа.

Буду благодарен за помощь:)

...