Логическое поле (Флажок)
- meu3
- Сообщения: 398
- Зарегистрирован: 28 сен 2018, 13:21
- Имя: Юрий Трифонов
- Откуда: Россия Севастополь
- Организация: IDEA
Логическое поле (Флажок)
Как оно должно работать?
Создал поле этого типа - Логическое поле (Флажок) = [1189]
Пытаюсь использовать в JS формуле - [1189] ? [882]*2 : [882]*[883]
Не срабатывает вне зависимости от состояния флажка.
Что не так?
Создал поле этого типа - Логическое поле (Флажок) = [1189]
Пытаюсь использовать в JS формуле - [1189] ? [882]*2 : [882]*[883]
Не срабатывает вне зависимости от состояния флажка.
Что не так?
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Логическое поле (Флажок)
Вам нужно проверять состояние флажка, пример кода такой:
Код: Выделить всё
$("#fields_1189").is(':checked') ? [882]*2 : [882]*[883]- meu3
- Сообщения: 398
- Зарегистрирован: 28 сен 2018, 13:21
- Имя: Юрий Трифонов
- Откуда: Россия Севастополь
- Организация: IDEA
Re: Логическое поле (Флажок)
Спасибо!
А где можно посмотреть синтаксис аналогичных JS скриптов?
А где можно посмотреть синтаксис аналогичных JS скриптов?
- meu3
- Сообщения: 398
- Зарегистрирован: 28 сен 2018, 13:21
- Имя: Юрий Трифонов
- Откуда: Россия Севастополь
- Организация: IDEA
Re: Логическое поле (Флажок)
$("#fields_1189").is(':checked') ? [882]*2 : [882]*[883] - не работает...
Входит в режим ожидания...
Входит в режим ожидания...
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Логическое поле (Флажок)
Проверил, ошибки с кавычками допустил. Попробуйте так:
Код: Выделить всё
$('#fields_1189').is(':checked') ? [882]*2 : [882]*[883]- meu3
- Сообщения: 398
- Зарегистрирован: 28 сен 2018, 13:21
- Имя: Юрий Трифонов
- Откуда: Россия Севастополь
- Организация: IDEA
Re: Логическое поле (Флажок)
Так работает, но для JS формулы - странно.
Если изменяю значения числовых полей из формулы - пересчитывает и сразу отображает.
Если включаю/выключаю флажок - вроде как пересчитывает, но отображения сразу - не происходит.
Такое впечатление, что нужно где-то включить динамическое обновление.
ЗЫ: Если можно ссылку на документацию, где написано и про одинарные кавычки и про формат полей.
Где, например, можно прочесть про
Если изменяю значения числовых полей из формулы - пересчитывает и сразу отображает.
Если включаю/выключаю флажок - вроде как пересчитывает, но отображения сразу - не происходит.
Такое впечатление, что нужно где-то включить динамическое обновление.
ЗЫ: Если можно ссылку на документацию, где написано и про одинарные кавычки и про формат полей.
Где, например, можно прочесть про
Код: Выделить всё
$('#fields_1189').is(':checked')- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Логическое поле (Флажок)
Дело в том, что такой тип поля просто не поддерживался ранее в поле "JS формуле"
Я доработал код для 2.5, замените файл из архива в папку includes\classes\fieldstypes\
Далее саму формулу замените на:
И теперь событие при нажатии на флажок будет обрабатываться автоматически. Сообщите результат.
Касательно "одинарные кавычки" это был недочет в самом поле и я его исправил, теперь можно использовать разные кавычки.
Касательно остальной документации, то тут дело в том что вы пишите чистый javascript. [882] - это значение поля, а все остальная логика javascript
Тут есть пример как использовать свою функцию на javascript
http://blog.rukovoditel.net/ru/kak-ispo ... i-funkcii/
Я доработал код для 2.5, замените файл из архива в папку includes\classes\fieldstypes\
Далее саму формулу замените на:
Код: Выделить всё
[1189].is(':checked') ? [882]*2 : [882]*[883]Касательно "одинарные кавычки" это был недочет в самом поле и я его исправил, теперь можно использовать разные кавычки.
Касательно остальной документации, то тут дело в том что вы пишите чистый javascript. [882] - это значение поля, а все остальная логика javascript
Тут есть пример как использовать свою функцию на javascript
http://blog.rukovoditel.net/ru/kak-ispo ... i-funkcii/
- Вложения
-
- fieldtype_js_formula.zip
- (2.66 КБ) 205 скачиваний
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Логическое поле (Флажок)
Я тут подумал и от конструкции ".is(':checked')" так же можно избавиться.
Файл из архива замените в includes\classes\fieldstypes\
А формулу измените на
Сообщите результат.
Файл из архива замените в includes\classes\fieldstypes\
А формулу измените на
Код: Выделить всё
[1189] ? [882]*2 : [882]*[883]- Вложения
-
- fieldtype_js_formula2.zip
- (2.66 КБ) 187 скачиваний
- meu3
- Сообщения: 398
- Зарегистрирован: 28 сен 2018, 13:21
- Имя: Юрий Трифонов
- Откуда: Россия Севастополь
- Организация: IDEA
Re: Логическое поле (Флажок)
Да! Так работает. Спасибо!