среда, 28 сентября 2016 г.

Обработка нажатия клавиши ENTER на K2 Smartforms

Изначально, в K2 smartforms формах нет встроенной возможности по нажатию клавиши Enter производить какое-либо событие. Например, часто встречается задача, когда пользователь вводит какое-нибудь значение в текстовой строке поиска, а дальше привычно нажимает Enter - форма должна выполнить некоторое правило (например поиска). Этого по умолчанию сделать нельзя - приходится рядом со строкой делать кнопку («Поиск»), которая срабатывает только если нажать на нее левой клавишей мыши или пальцем на сенсорном экране. Но в данном случае интуитивно напрашивается возможность выполнения действия поиска введенной в строке информации по нажатию клавиши Enter на клавиатуре.

Сделать это можно, используя JQuery.

Рассматривать будем все на примере простой формы, где есть строка ввода (на рисунке №1), кнопка «Enter» (на рисунке №2), и Data Label (на рисунке №3). При нажатии на кнопку «Enter» строка ввода «дублирует» введенные в строке данные.



вторник, 1 марта 2016 г.

Пример реализации интерфейсов K2 smartforms

В последнее время завершили несколько проектов для заказчика - НИУ "Высшая школа экономики", где я постарался придать хоть и без того приятным интерфейсам К2 smartforms еще более стилизованый вид.

Результатами хочу поделиться как примером того, что можно сделать на К2 smartforms, HTML5 и CSS.



среда, 3 февраля 2016 г.

Создание общих правил для форм K2 smartforms

Что-то за последними изменениями из моего внимания выпала такая интересная функциональность, недавно появившаяся в K2 smartforms, как создание общих правил для форм и представлений К2, не привязанных к какому-либо событию формы/представления или ее элемента. Но, благодаря бдительному оку представителя одного из наших клиентов (спасибо, Сергей Крочак!), этот пробел быстро восполнился :)

Действительно, при создании форм и представлений, очень часто встречалась ситуация. когда надо прописывать одну и ту же последовательность действий как реакцию системы при наступлении нескольких событий. Ранее лучшей практикой решения такой ситуации, чтобы не дублировать действия для каждого такого события в отдельности, было создание на форме/представлении фиктивного (невидимого) контрола, к действию OnChange которого писалось это общее правило, и далее, по мере необходимости, это действие вызывалось. Ничего плохого, вроде, нет, но коряво.

Теперь, появилась возможность создавать общие правила.