質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
jQuery UI

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Seasar2

Seasar2はJ2EE/Java EEでの大規模な開発を効率良く行なうためのフレームワークです。 必要な設定ファイルを従来のものと比べて少なくし、依存性を分離して記述しています。 そのため、生産性の高いプログラム開発が可能です。

Q&A

解決済

1回答

3648閲覧

jQueryUI Sortableを使ってソート後の値をDBに保存したい

k499778

総合スコア599

jQuery UI

jQuery UI はjQuery公式のインターフェースライブラリであり、対話型のウェブアプリケーションを作る際に役立ちます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Seasar2

Seasar2はJ2EE/Java EEでの大規模な開発を効率良く行なうためのフレームワークです。 必要な設定ファイルを従来のものと比べて少なくし、依存性を分離して記述しています。 そのため、生産性の高いプログラム開発が可能です。

0グッド

1クリップ

投稿2015/04/13 05:36

jQuery UIのSortableを使って、リストの並びを動的に変更し、その情報をDBに登録するアプリを作成しています。環境はSeasar2(SAStruts/S2JDBC),Java,jsp,jQuery,javascriptです。

質問があるのですが、
結論から言うと、

ソート後の配列情報をActionクラスのメソッドに受け渡すにはどうしたらいいでしょうか?

やりたいことと致しましては、
表題にあるとおり、jQueryUI Sortableを使ってソート後の値をDBに保存したい。と思っていて
以下の流れで行おうと思っています。

(1)ソート後の配列を取得する。
(2)その配列情報をActionクラスのupdateメソッドに受け渡す。
(3)updateしてDB情報を更新する。

今(1)はある程度わかっていて、(2)のところで悩んでいます。

状況としては、
ソート後の配列情報をログに出すことができているというところです。

↓index.jsp

lang

1<ul class="jquery-ui-sortable"> 2 <h3>やることリスト(順番)</h3> 3 <c:forEach var="tasks" items="${taskList}"> 4 <li id="item_${tasks.id}" class="ui-state-default border-color-red"> 5 <c:out value="${tasks.task}" /> 6 </li> 7 </c:forEach> 8 </ul> 9 10 <script> 11 $(function() { 12 $('.jquery-ui-sortable').sortable({ 13 connectWith : '.jquery-ui-sortable' 14 }); 15 $('.jquery-ui-sortable').disableSelection(); 16 }); 17 </script> 18 <script> 19 $(function() { 20 $('.jquery-ui-sortable').sortable({ 21 update : function(ev, ui) { 22 console.log($(this).sortable("serialize")); 23 } 24 }); 25 }); 26 </script> 27</body> 28</html>

↓画面
![イメージ説明]WIDTH:600

↓TaskForm

lang

1package jp.co.tk.form; 2 3 4public class TaskForm 5{ 6 public Long id; 7 public String task; 8 public String userName; 9}

(2)のところで何がわからないかというと、
・そもそも配列はどこに格納されているのか。
**・どうやってその配列をActionクラスのメソッドに受け渡すのか。**ActionForm?

すいません。自分の中でも情報量が多く整理できていない文章になってしまいましたが、
もしアドバイスいただける方がいればよろしくお願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

解決しました!!

大まかな流れとしては以下の通りです。
(1)JSPから配列の文字列をlocation.hrefプロパティを使ってActionクラスに渡し、
(2)ActionForm,DBのテーブルに「sort」の列を追加し、
(3)そのソート順にリストを表示、
(4)Actionクラスで受け取った文字列をsplitメソッドで分割して配列に格納、
(5)最後配列のidの順に新たなソート番号を付け直し、updateする。

投稿2015/04/15 03:24

k499778

総合スコア599

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問