объясняю где ошибки
во-первых генерируется не хтмл5 валидный код
в самом скетчек 2 раза повторяется закрытие тега боди
tempString = tempString + "</body>";
tempString = tempString + "</body></html>";
появляются вот такие артефакты двойных кавычек
tempString = tempString + """>";
направильный формат тега ссылки, отсутствуют кавычки
tempString = tempString + "<a href=../2><button class=""";
---
итого вердиктъ - блок веб страницы надо полностью переделать следущим образом
в память программ для авр должна записываться строка цсс файлом
строка с яваскрипт файлом
и строка с хтмл5 файлом
зачем это нужно?
когда передадутся эти файлы, то браузер их закеширует и больше не будет запрашивать, при этом при передаче каждого такого файла, вебсервер должен передавать заголовок как тут описано
https://ruhighload.com/%D0%9A%D1%8D%D1% ... he-control
зачем нужны отдельные файлы? почему нельзя все в одну кучу засунуть?
блок вебсервера надо доработать так, чтобы он позволял хранить файлы на сд карте или в spiffs для есп, использование авр для таких вещей довольно затратное дело, поэтому лучше будет использовать просто удп сокет сервер как самый простой вариант передачи данных по сети, правда это уже никак не связано с вебом
в качестве альтернативы можно использовать remotexy, blynk, json, simpte get request
чтобы просто дергать релешки - достаточно посылать гет запросы при помощи софта с телефона
https://play.google.com/store/apps/deta ... _shortcuts
либо у вас где-то расположен хтмл файл локально и вы его открываете браузером, а там яваскрипт дергает нужные урл с нужными параметрами и получает в ответ джейсона
вобщем авр и куча текста хтмл это несовместимые вещи и лучше это не использовать
но если использовать сд карту или есп, то файлы могут быть большого размера и чтобы не нагружать контроллер передачей каждый раз кучи хтмл, то яваскрипт будет дергать урлы
при этом очень легко будет сделать красивую вебморду как тут
https://youtu.be/NrIrLw1rOdk?t=196
сейчас веб строится при помощи т.н. цсс фреймворков, которые используют яваскрипт для разных целей и основную библиотеку jquery, которая позволяет навешивать разные плагины контролов
можно легко визуально сделать разметку при помощи этого сервиса
https://www.layoutit.com/
в ютубе есть уроки по bootstrap4, там 95% это копипаста готового когда из примеров
вот тут можно посмотреть готовый пример вебморды для автомата эффектов гирлянды и исходники на гитхабе
https://mysku.ru/blog/aliexpress/59187.html
там вебсервер загружает один раз хтмл и яваскрипт, дальше яваскрипт открывает вебсокет и передает данные в реальном времени уже, но это полезно, когда надо передавать показания приборов в реальном времени, но главное такая возможность есть в пакете веб сервера для есп
если вы уверены, что ваш клиент всегда будет иметь доступ в инторнет, то вам даже не надо размещать яваскрипт и цсс в памяти своего устройства и он в всегда будет доступен онлайн при помощи одной строки в хтмл
<link rel="stylesheet" href="
https://maxcdn.bootstrapcdn.com/bootstr ... ap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
есть еще платные темы и среди них есть админ панели с разными индикаторами и графиками
https://themes.getbootstrap.com/