Joomla: редактируемый экран списка - PullRequest
0 голосов
/ 01 июня 2010

У меня есть сайт joomla, где пользователи могут войти в систему. После входа в систему пользователь может отобразить экран списка, скажем, список контактов со столбцом имени и номером телефона. Я называю это списком, но думаю, его можно назвать представлением списка, представлением сетки и т. Д.

Я хотел бы сделать один из столбцов (скажем, столбец номера телефона) редактируемым на месте; то есть я не хочу заставлять пользователя открывать форму редактирования контакта. Таким образом, в столбце номера телефона текстовое поле должно отображаться в каждой строке. Текстовое поле содержит существующие данные для этой строки. Пользователь может изменить номер телефона в текстовом поле непосредственно на экране списка, а затем нажать значок «Сохранить» в этой строке, чтобы сохранить только эту строку (и только если она изменилась). Было бы неплохо, если бы сохранение было выполнено с помощью AJAX-запроса, но сейчас было бы нормально отправить форму.

Основываясь на «экране списка» в книге «Изучение разработки расширений Joomla», я в настоящее время могу отобразить правильный список элементов для пользователя. Есть ли у кого-нибудь пример / учебное пособие о том, как сделать сохранение каждой строки в отдельности? Кажется, что все экраны списка, которые я вижу, имеют ссылку, по которой нужно щелкнуть, чтобы открыть форму редактирования, в отличие от разрешения редактирования на месте.

Спасибо

1 Ответ

0 голосов
/ 01 июня 2010

Сначала вы должны написать компонент. Который в основном сделает спасительную часть отдельного ряда. Таким образом, в основном ваш компонент URL принимает параметр в качестве номера телефона row_id и т. Д. И имеет запрос на обновление для обновления базы данных.

Во-вторых, вам нужно написать функцию javascript, которая вызывается при нажатии каждой кнопки сохранения. Функция javascript читает подробности строки, читая из DOM. а затем запустить запрос AJAX для вышеупомянутого компонента. URL-адрес вышеупомянутого компонента должен иметь формат = raw.

Результат запросов обновления компонента может быть возвращен как true или false. И соответственно прочитанный ответ javascript ajax. на основе которого может быть показан флаг, говорящий, что строка обновлена. Я могу помочь вам с кодом дальше, если вы опишите его более подробно

...