#jquery #jeditable
#jquery #jeditable
Вопрос:
У меня есть страница JSP, которая создает экран на основе табличных данных из моего сервлета. Я использую display tag для форматирования табличных данных и jquery.jeditable, чтобы сделать определенные ячейки доступными для редактирования пользователем.
Одна из этих ячеек представляет собой выбор (выпадающий) списка параметров. Прямо сейчас select работает, но для его использования требуется чрезмерное количество кликов и нажатий клавиш:
1) щелкните в поле, чтобы сделать его доступным для редактирования, 2) щелкните стрелку вниз, чтобы просмотреть список опций, 3) выберите опцию, 4) нажмите «ввод», чтобы сохранить выбранный вариант, 5) наконец, нажмите tab, клавишу со стрелкой или что-то еще, чтобы выйти из поля.
Я хотел бы исключить некоторые из этих шагов, в частности 2 и 4. Вот что я ищу:
Как только щелкается ячейка [или если я имитирую щелчок с помощью jquery.trigger (‘click’)], отображается выпадающий список, пользователь использует клавиши со стрелками, чтобы выбрать нужный вариант, и 2) пользователь нажимает enter или tab, чтобы покинуть поле, сохраняя выбранный вариант. Если вместо enter / tab выбран параметр esc, ячейка возвращается к своему исходному значению.
Прежде чем я потрачу часы, пытаясь заставить это работать, есть ли плагин jquery, который мог бы выполнить эту работу за меня? Я был бы очень благодарен за любые указания на решение.
Ответ №1:
Я пытаюсь решить ту же проблему. Насколько я могу судить, нет способа заставить выпадающий список браузера / поле выбора запускаться в «расширенном» состоянии, и нет способа заставить его расширяться с помощью javascript … 😛
Лучшее решение, которое я придумал на данный момент, — это вручную оформить выпадающий список так, чтобы он выглядел так, как будто он был добавлен с помощью jeditable плагина редактирования на месте, в то время как на самом деле это просто обычный выпадающий список. Это дает нам возможность открывать его одним щелчком мыши. Сохраните в форме отправки (что я делаю) или в .change().
Я знаю, что это неполное решение, но я надеюсь, что оно поможет! Я обновлю здесь, если найду что-нибудь получше.
Я полагаю, что другим решением было бы изменить сам плагин jeditable, чтобы использовать выпадающий список на основе jquery (который может открываться в «развернутом» виде) вместо встроенного выпадающего списка браузера… Все еще не идеально, но это вариант!