Sim800, управление нагрузкой флажками

Добрый вечер. Arduino Nano+Sim800. Получаю с сервера данные в формате json:

{"bit1":"1","bit2":"1"}

это если флажки отмечены
А если отмечен 1 то
{,“bit2”:“1”}, второй вообще осутсвует. Ну это такая особенность сереализации в jQuery

Все бы хорошо если бы оТсутствие упоминания можно было бы рассматривать как снятие галки . Но в ответ на подобную команду
sendATCommand(“AT+HTTPPARA="URL","http://abcde.ab.in/file.txt\”", true); иногда просто прилетает мусор

т.е и щу встроке indexOf(‘bit1’), если есть то фактически это 1, иначе 0
и если мусор то тоже 0.
может есть какое-то решение?

Для того чтобы элемент был сериализован методом serialize или serializeArray , он должен отвечать критериям “successful controls” , указанным в спецификации HTML. Первое условие “successful controls” – это наличие у элемента атрибута name . Второе , если форма отправлена не с помощью кнопки submit , то она (имя и значение кнопки) не будет добавлена в возвращаемую методом строку или массив. Третье , значения из элементов checkboxes и radio кнопок (input с type “radio” или “checkbox”) будут включены в набор только в том случае, если они установлены (отмечены). Четвёртое , элементы, которые отключены, обработаны не будут. Т.е. для того чтобы элемент был сериализован, он должен иметь false в качестве значение свойства disabled (другими словами, у элемента обязан отсутствовать атрибут disabled ).

Screenshot_1_флажки на ардуино ру

ну ок, допер сам. Заведу еще контрольный один флаг=1 ну типа
{“bit1”:“1”,“bit2”:“1”, “CBIT”:“1”}
и при его наличии выдача уже не будет считаься мусором, а отсутсвующие флаги можно считать нулями.

А мог бы допереть до того, что мусора приходить не должно и надо исправлять баг. Так близок был.

2 лайка