В разделе 8 мы завершили функции запроса и удаления категорий продуктов, поэтому легко реализовать функции запроса и удаления продуктов. Принцип точно такой же, как в разделе 8, просто изменяйте некоторые параметры, такие как запрос различных действий и т. Д. Поскольку запросы и удаление продуктов не требуют нового окна пользовательского интерфейса, нам просто нужно завершить соответствующую часть в Query.jsp и соответствующем фоне.
1. Реализация функции запроса на продукт
Функция запроса в основном реализована в коробке запроса. Из предыдущего раздела мы видим, что в поле запроса используется текст: «<input id = 'ss' name = 'ss' />». Мы реализуем его, преобразуя обычное текстовое поле в текстовое поле поиска запроса. Ниже мы добавляем соответствующую часть кода в Query.jsp:
$ ('#ss'). Searchbox ({// Searcher Event Query Query: function (значение, имя) {// Значение представляет входное значение // Добавить код триггера $ ('#dg'). DataGrid ('загрузка', {// reload, укажите имя параметра как значение пользовательского значения: value});}, raffic: 'please uepload' Клевовое слово SEARCE '});Результаты теста следующие:
Запрос очень прост, как загрузка всех продуктов в предыдущем разделе, за исключением того, что при запросе параметры устанавливаются на значение, введенное пользователем, а при загрузке всех параметров устанавливаются на пустые.
2. Реализация функции удаления продукта
Далее мы завершим функцию удаления продуктов. Во -первых, мы завершим соответствующий код в Query.jsp:
{iconcls: 'icon-remove', text: 'delete product', handler: function () {// добавить код триггера var row = $ ("#dg"). dataGrid ("getSelections"); // Защитите, есть ли выбранная запись строки, используйте GetSelections, чтобы получить все выбранные строки // вернуть выбранную строку. Если строки не выбраны, верните пустой массив if (row.length == 0) {// всплыть в подсказке $ .messager.show ({// Синтаксис аналогичен статическому методу в Java. Direct Object Calls Tilt: 'reffice', MSG: «По крайней мере, одна запись должна быть выбрана ', Timeout: 2000, Showtype:' slide ',}); } else {// Подсказывать ли подтверждение удаления. Если подтверждено, выполняется логика удаления $ .messager.confirm ('delete подтвердить диалог', 'вы уверены, что хотите удалить этот элемент? {ids + = Rows [i] .id + ","; $ ("#DG"). DataGrid ("Uncheckall"); MSG: «Удалить, пожалуйста, проверьте операцию», Timeout: 2000, Showtype: 'Slide',}); }}}}}}} Как видно из вышеуказанного кода, операция удаления требует, чтобы сначала была выбрана как минимум одну запись. После выбора, при подтверждении удаления (то есть r является истинной), сначала получите, какие записи были проверены пользователем, сплачивали вместе идентификационные номера этих записей, а затем захотите отправить запрос Ajax в фоновом режиме, запросите метод DeleteByids в ProductAction и взять сплайсированный идентификатор в качестве параметра. Если удаление будет успешным, верните строку «true» на передний план, а затем передний план очистит только что проверенную запись, чтобы избежать влияния на последующую операцию обновления, поскольку обновление также необходимо проверить запись, а затем обновить текущую страницу и перезагрузить всю информацию о продукте в базе данных.
Процесс очень ясен. Давайте напишем фоновую программу, начиная с уровня обслуживания:
Общедоступный интерфейс Productservice Extens BaseService <Продукт> {// Запрос информации о продукте, категории категорий категорий категорий <Продукт> QueryJoincategory (тип строки, int page, int size); // Запрос с использованием названия продукта // Запрос общего количества записей на основе ключевых слов Public Long GetCount (Type); // Удалить несколько записей на основе идентификаторов Public void deleteByids (String IDS); } @Suppresswarnings ("unchecked") @service ("productservice") открытый класс ProductserviceImpl расширяет baseServiceImpl <drop> реализует продукт service {// Опубликовать другие коды ... @Override public void deleteByids (String ID) {String hql = "Delete Product P.Iid P.Id in (" + IDS + ")"; getSession (). CreateQuery (hql) .executeUpdate (); }} Затем заполните метод DeleteByids в ProductAction:
@Controller ("ProductAction") @Scope ("Prototype") Public Class Production Extens Baseaction <production> {// Опустить другие коды ... public String deleteByids () {System.out.println (ids); productservice.deletebyids (ids); // Если удаление будет успешным, оно будет выполнено вниз. Мы передадим «true» на передний план в форме потока inputstream = new Bytearrayinptstream («true» .getbytes ()); вернуть "поток"; }}Та же идея, что и раньше для удаления классов продукта, следующее настроено на struts.xml:
<name = "product_*" method = "{1}"> <!-Опустить другие конфигурации-> <name = "stream" type = "stream"> <param name = "inputeame"> inputstream </param> </result> </action>Таким образом, строка «истина» будет передана на стойку регистрации, а удаление будет успешным после получения инструкций. Проверьте эффект:
Тест был успешным, и на данный момент были завершены функции поиска и удаления продукта.
Адрес этой статьи: http://blog.csdn.net/eson_15/article/details/51360804
Вышеуказанное - все содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.