セクション8では、製品カテゴリのクエリと削除の機能を完了しているため、クエリと削除の関数を簡単に実装できます。原則はセクション8とまったく同じです。さまざまなアクションの要求など、いくつかのパラメーターを変更するだけです。製品のクエリと削除では、新しいUIウィンドウをポップアップする必要はないため、Query.jspと対応するバックグラウンドの対応する部分を完了する必要があります。
1。製品クエリ関数の実装
クエリ関数は、主にクエリボックスに実装されています。前のセクションから、クエリボックスがテキストを使用していることがわかります: "<input id = 'ss' name = 'ss' />」通常のテキストボックスをクエリ検索テキストボックスに変換して実装します。以下に、query.jspのコードの対応する部分を追加します。
$( '#ss')。searchbox({// trigger query event searcher:function(value、name){// valueは入力値を表します//トリガーコード$( '#dg')。テスト結果は次のとおりです。
クエリは、前のセクションのすべての製品をロードするのと同じように非常にシンプルです。ただし、クエリするときにパラメーターがユーザーが入力した値に設定され、すべてのパラメーターをロードするときは空に設定されます。
2。製品削除関数の実装
次に、製品の削除機能を完了します。まず、query.jspで対応するコードを完了します。
{iconcls: 'icon-remove'、text: 'delete delete product'、handler:function(){//トリガーコードvar rows = $( "#dg")。datagrid( "getSelections"); //選択した行レコードがあるかどうかを防御するには、GetSelectionsを使用して選択したすべての行を取得します//選択した行を返します。行が選択されていない場合は、空の配列を返します(rows.length == 0){//プロンプトメッセージ$ .messager.show({//構文はjavaの静的メソッドに似ています。ダイレクトオブジェクトコールタイトル:「エラープロンプト」、msg: '少なくとも1つのレコードは選択されなければなりません」、タイムアウト: } else {//削除を確認するかどうかを促します。確認された場合、削除のロジックが実行されます$ .messager.confirm( 'Delete Confismダイアログ'、「このアイテムを削除する必要がありますか?」、function(r){if(r){// 1。取得したレコードから対応するIDを取得し、IDの値をスプライスし、バックグラウンド1,3,4 vars = ++){ids += rows [i] .id +"; ids.substr("、 ");後続の操作$( "#dg")。datagrid( "uncheckall"); MSG:「操作を削除してください」、タイムアウト:2000、 'Slide'、}}}}); }}}}}}}上記のコードからわかるように、削除操作では、少なくとも1つのレコードを最初に選択する必要があります。選択した後、削除(つまりRがtrue)を確認すると、最初にユーザーがどのレコードがチェックされ、これらのレコードのID番号をつなぎ合わせてから、Ajaxリクエストをバックグラウンドで送信し、製品のDeleteByIDSメソッドを要求し、スプライスされたIDをパラメーターとして取得します。削除が成功した場合は、文字列「true」を前景に返し、その後、レコードを確認し、現在のページを更新してデータベース内のすべての製品情報をリロードする必要があるため、その後の更新操作に影響を及ぼさないように、チェックされたレコードをクリアします。
プロセスは非常に明確です。サービスレイヤーから始めて、バックグラウンドプログラムを書きましょう。
Public Interface Productserviceは、BaseService <Product> {//クエリ製品情報、カスケードカテゴリパブリックリスト<製品> QueryJoIncategory(String Type、Int Page、Int Size); //製品名を使用したクエリ//キーワードに基づくレコードの総数をパブリックlong getCount(文字列タイプ); // IDSに基づいて複数のレコードを削除しますpublic void deleteByids(String IDS); } @suppresswarnings( "Unchecked")@Service( "Productervice")Public Class ProductserviceImpl拡張BaseServiceImpl <Product> Productservice {//他のコードを省略します... @Override public void deleteByids(string ids){string hql = "from product p from prodet getSession()。createQuery(hql).executeUpdate(); }}次に、製品のdeletebyidsメソッドを完成させます。
@Controller( "Productaction")@scope( "Prototype")Public Class Productaction Extends BaseAction <Product> {//他のコードを省略... public String deleteByIds(){system.out.println(ids); Productservice.deleteByids(IDS); //削除が成功した場合、下方に実行されます。 「true」を前景に渡しますinputstream = new bytearrayinputStream( "true" .getBytes()); 「ストリーム」を返します。 }}以前と同じアイデア製品クラスを削除するために、以下はstruts.xmlで構成されています。
<action name = "product_*" method = "{1}"> <! - 他の構成を省略 - > <result name = "stream" type = "stream"> <param name = "inputname"> inputstream </param> </result> </action>このようにして、文字列「true」がフロントデスクに渡され、指示を受け取った後に削除が成功します。効果をチェックしてください:
テストは成功し、この時点で、製品の検索と削除機能が完了しました。
この記事のアドレス:http://blog.csdn.net/eson_15/article/details/51360804
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。