Требуется реализовать начальный веб-интерфейс для back-end системы. Реализация на JavaScript. Предполагаемые к использованию фреймворки и плагины: jQuery, jqGrid, bootstrap. Их состав обсуждается и возможен пересмотр, исходя из опыта и здравых рекомендаций потенциального разработчика, готов прислушаться к объективному мнению. Теперь о первой задаче.
Что имеем:
1. Имеется back-end приложение, которое по http-запросу может отдавать данные в любом формате (предполагаю json или, на крайний случай xml), в зависимости от потребностей front-end'а.
2. Также это приложение будет принимать post-запросы для изменения данных. В ответ на post-запрос может быть сообщение об ошибке, некорректности данных и т.п., что необходимо отобразить пользователю.
3. Имеется сущность «Клиенты», для начала 4 поля: ID, Имя, Телефон, Дата рождения
Требуется реализовать на клиентской части Веб-приложение на JavaScript (пока других альтернатив не вижу, но обсуждать готов), которое :
1. Отображает таблицу сущности «Клиенты» (повторюсь, под требуемый формат ответ http-сервиса я подготовлю), в которой организовано:
a. Сортировка по любому столбцу
b. Опциональный постраничный вывод
c. Открытие формы редактирования элемента по щелчку на строке это должно быть опционально. Либо открывается форма редактирования, либо просто вызов события выбора строки (второй вариант достаточен просто в тестовом исполнении, например, alert)
d. Редактирование элемента с учетом невозможности ввести некорректные символы (ID только цифры, Дата рождения по маске даты, Телефон по маске +7 (ххх) ххх-хх-хх, но в этом случае должна быть возможность отключить маску ввода при нестандартном номере телефона)
e. Отправка post-запроса об изменении элемента с обработкой результата (от сервера может прийти ответ о некорректности конкретного поля, на это надо указать пользователю. Требуемый формат ответа жду от разработчика)
f. Не обязательно: поиск по подстроке (в любом случае поиск правильнее реализовывать на стороне сервера, но окошко с корректировкой параметров post-запроса будет не лишним)
Важные условия:
Решение не должно использовать «тяжелые» фреймворки (или не целиком)
Должен быть приятный UI (термин «приятный», конечно, абстрактный, поэтому придираться не буду, но как пример, прошу обратить внимание на
, что-то «типа этого» сойдет).
Если выполнение данной задачи будет успешным и мы найдем общий язык вполне вероятно продолжение сотрудничества.