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

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

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

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

Q&A

解決済

1回答

1139閲覧

sortableを使い列数をカウントしたいです。

tst1234

総合スコア1

jQuery

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

0グッド

0クリップ

投稿2021/07/27 01:21

編集2021/07/27 11:41

現在サイトを作っているのですが

sortableを使ってテーブル内のリストを移動できるようにしました。

列1列2列3
abc
列1列2列3
ac
b

↑今はこのような感じなのですが、列数をカウントして表示させたいと思ったのですがどうすればよいのでしょうか。初心者すぎて申し訳ないですがよろしくお願いします。

列1列2列3
111
abc
列1列2列3
201
ac
b

このように移動したらページを更新することなくリアルタイムで列数を反映させたいです。わかりづらくて申し訳ないです。

<style> ul.jquery-ui-sortable { list-style-type: none; margin: 0 2px; padding: 2px; width: 250px; height: 400px; float: left; background-color: beige; border: solid 1px #606060; font-size: 5px; } ul.jquery-ui-sortable li { margin: 3px; padding: 0em; cursor: move; } table { width: 245px; border: solid 1px #606060; font-size: 5px; text-align: left; } </style> <ul class="jquery-ui-sortable"> ここに今の項目数を表示したい <li class="a">項目 1-1</li> <li class="a">項目 1-2</li> <li class="a">項目 1-3</li> <li class="a">項目 1-4</li> <li class="a">項目 1-5</li> </ul> <ul class="jquery-ui-sortable"> ここに今の項目数を表示したい <li class="a">項目 2-1</li> <li class="b">項目 2-2</li> <li class="b">項目 2-3</li> <li class="b">項目 2-4</li> <li class="b">項目 2-5</li> </ul> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> <script> <!-- $( function() { $( '.jquery-ui-sortable' ) . sortable( { connectWith: '.jquery-ui-sortable' } ); $( '.jquery-ui-sortable' ) . disableSelection(); } ); // --> </script>

現在はこのようになっています。

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

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

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

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

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

yambejp

2021/07/27 05:03

> sortableを使ってテーブル内のリストを移動できるようにしました の完成している部分だけでもソースを提示できませんか?
tst1234

2021/07/27 11:41

追記いたしました。よろしくお願いいたします。
yambejp

2021/07/28 00:37

テーブルのソートかと思ったのですがulのliをソートするのでしょうか?
tst1234

2021/07/28 00:46

テーブルでも大丈夫ですが、liのほうが個人的にわかりやすいのでliのソートをして今の項目数を表記したいです。
yambejp

2021/07/28 00:58 編集

例示の「ここに今の項目数を表示したい」は ul直下にテキストはおけないので不正な位置ですが、 ulの外側にspanかなにかおいてもいいのでしょうか? <span>1</span> <ul> <li>・・・</li> <ul>
tst1234

2021/07/28 01:16 編集

大丈夫です!ほかのところも変更してしまっても構いません。よろしくお願いいたします。
guest

回答1

0

ベストアンサー

javascript

1<style> 2.wrap{display:flex;} 3.jquery-ui-sortable{min-height:1em;} 4</style> 5<script> 6$(function(){ 7 function countSortable(){ 8 $('.jquery-ui-sortable').each(function(){ 9 $(this).prev('span').text($(this).find('li').length); 10 }); 11 } 12 countSortable(); 13 $( '.jquery-ui-sortable' ).sortable({ 14 connectWith:'.jquery-ui-sortable', 15 update: function(){ 16 countSortable(); 17 }, 18 }); 19}); 20</script> 21<div class="wrap"> 22<div> 23<span></span> 24<ul class="jquery-ui-sortable"> 25 <li class="a">項目 1-1</li> 26 <li class="a">項目 1-2</li> 27 <li class="a">項目 1-3</li> 28 <li class="a">項目 1-4</li> 29 <li class="a">項目 1-5</li> 30 31</ul> 32</div> 33<div> 34<span></span> 35<ul class="jquery-ui-sortable"> 36 <li class="a">項目 2-1</li> 37 <li class="b">項目 2-2</li> 38 <li class="b">項目 2-3</li> 39 <li class="b">項目 2-4</li> 40 <li class="b">項目 2-5</li> 41</ul> 42</div> 43</div>

投稿2021/07/28 01:26

編集2021/07/28 01:30
yambejp

総合スコア115012

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

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

tst1234

2021/07/28 01:34

ありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.46%

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

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

質問する

関連した質問