УкраїнськаEnglishmRussian
Вход/Новый
В теме нет новых постов

Почему не реагирует на чекбокс?


Автор Сообщение
Сообщение создано: 07. 05. 2013 [11:19]
dell
Путин Краб
Создатель темы
Зарегистрирован(а) с: 09.04.2013
Сообщения: 28
Висит чекбокс и лампочка. Код:
JAVASCRIPT
if (FormEl1_value == 1) {
	El_Alarm1_fillColor = "green";
} else {
	El_Alarm1_fillColor = "red";
}

Запускаем выполнение, если сначала чекбокс был отмечен по умолчанию, то лампа зеленая, и красная, если не был отмечен. Но при изменении она не реагирует, почему?
Сообщение создано: 07. 05. 2013 [11:31]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"dell" wrote:

Запускаем выполнение, если сначала чекбокс был отмечен по умолчанию, то лампа зеленая, и красная, если не был отмечен. Но при изменении она не реагирует, почему?

Почему у Вас не реагирует я не знаю. У меня всё и везде реагирует, см. документацию и примеры.
Вероятно нет элементов FormEl1_value или El_Alarm1_fillColor.

Learn, learn and learn better than work, work and work.
Сообщение создано: 08. 05. 2013 [06:26]
dell
Путин Краб
Создатель темы
Зарегистрирован(а) с: 09.04.2013
Сообщения: 28
"roman" wrote:

Почему у Вас не реагирует я не знаю. У меня всё и везде реагирует, см. документацию и примеры.
Вероятно нет элементов FormEl1_value или El_Alarm1_fillColor.

Эти элементы есть и обрабатываются. Делаю виджет, в нём лампа сигнализации серого цвета, чекбокс не отмечен. В проектах запускаю, лампа горит красная, значит код обрабатывается. Делаю в виджете по умолчанию чекбокс отмеченным, запускаю, лампа зеленая, значит опять код обрабатывается. Но при изменении состояния чекбокса пользователем ничего не меняется. Как будто "онлайн" не работает. Больше в виджете ничего нет, только чекбокс и лампа сигнализации. И только этот код. В поле "Обработка" у всех упомянутых параметров стоит "true", в поле "Конфигурация" - "Нет".
Где какие примеры можно посмотреть? Быстрый старт почти весь прошел, и реальное физическое устройство по modbus реагировало на чекбокс, там это была выходная связь.
Сообщение создано: 08. 05. 2013 [08:23]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"dell" wrote:

Эти элементы есть и обрабатываются.

Тогда печатаем.

"dell" wrote:

Где какие примеры можно посмотреть? Быстрый старт почти весь прошел, и реальное физическое устройство по modbus реагировало на чекбокс, там это была выходная связь.

Беру кадр "Тестовая"->"Тесты FormEl"
Устанавливаю для "chk1_value" - "Обработка"
Добавлю строку в процедуру:
JAVASCRIPT
SYS.messDebug("TESTFORM","Value="+chk1_value);

Запускаю проект "Группы сигнализаций" и в консоли вижу:
//Флаг не выбран
0|TESTFORM | Value=0
//Флаг выбран
0|TESTFORM | Value=1

Learn, learn and learn better than work, work and work.
Сообщение создано: 08. 05. 2013 [10:19]
dell
Путин Краб
Создатель темы
Зарегистрирован(а) с: 09.04.2013
Сообщения: 28
"roman" wrote:


0|TESTFORM | Value=0

0|TESTFORM | Value=1

Так всё и пишется, в зависимости от того, поставлена галочка или нет. Причем пишется новая строка, примерно каждую секунду, т.е. условно говоря раз в секунду опрашивается состояние и выводится состояние в консоль. Если же я в свой виджет втыкаю
JAVASCRIPT
SYS.messDebug("TESTFORM","Value="+FormEl1_value);

то у меня пишется 1 раз. Т.е. по ощущениям 1 раз было опрошено состояние при запуске, и так и остаётся, независимо от того, меняется состояние флажка или нет.
Сообщение создано: 08. 05. 2013 [10:55]
roman
Roman Savochenko
Moderator
Contributor
Developer
Зарегистрирован(а) с: 12.12.2007
Сообщения: 3750
"dell" wrote:

то у меня пишется 1 раз. Т.е. по ощущениям 1 раз было опрошено состояние при запуске, и так и остаётся, независимо от того, меняется состояние флажка или нет.

Ошибка в процедуре и она останавливается или периодичность процедуры очень большая!

Learn, learn and learn better than work, work and work.



7809