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

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

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

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

jQuery

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

285閲覧

HTMLの表内の情報やり取り(追加、削除)について

hide09090909

総合スコア68

JavaScript

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

jQuery

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2017/04/12 07:16

2つの表と2つのボタンを配置し、それぞれのボタン押下に応じて、表内の情報のやり取りを行う機能を実装したいです。
下記に表とボタンの機能を示します。

■表1
・表内の各行にラジオボタンを配置
・ファイル名と日時を表示

■追加ボタン
・追加ボタン押下で、表1のラジオボタンで選択されている行(ラジオボタン以外)の情報を表2に追加
・表2に追加された情報がなければ、表2の1行目に追加。
・表2に追加された情報が1つだけならば、表2の2行目に追加
・表2に追加された情報が2つある場合は、アラートを表示し、追加を行わない。

■表2
・表内の各行にチェックボックスを配置

■削除ボタン
・追加ボタン押下によって、表2に追加された行内の情報を削除する。
⇒チェックボックスで選択された行

下記に私がイメージしているコードのサンプルを示します。

class="sample" style="margin-top: 50px" id="test2"> <thead> <tr> <th></th> <th>ファイル名</th> <th>時間</th> </thead> <tbody id="select"> <tr> <td><input type="radio" name="check" value="check"></td> <td>sample1</td> <td>00:00:00</td> </tr> <tr> <td><input type="radio" name="check" value="check"></td> <td>sample2</td> <td>00:00:00</td> </tr> </tbody> </table> <button type="submit" id="aaa" name="bbb" class="cc" style="color: #ffffff; background-color: #40b740; margin-top: 20px;">追加</button <div class="table-responsive cncList"> <table class="sample" id="test"> <thead> <tr> <th></th> <th>ファイル名</th> <th>時間</th> </thead> <tbody id="result"> <tr> <td><input type="checkbox" name="checkbox" value="1"></td> <td></td> <td></td> </tr> <tr> <td><input type="checkbox" name="checkbox" value="2"></td> <td></td> <td></td> </tr> </tbody> </table> <button type="submit" id="aaa" name="bbb" class="cc" style="color: #ffffff; background-color: #40b740; margin-top: 20px;">削除</button>

■ボタン押下時の処理イメージ

■追加ボタン
・選択したラジオボタンの値を取得
・追加表示を行う表(表2)を指定
・表2に追加された情報数を判定、0ならば1列目に、1つならば2列目に追加し、2つならばアラートを表示

■削除ボタン
・選択したチェックボックスの値を取得
・指定した列の情報を削除(クリア)

処理イメージに関しては、この通りでなくも問題ありません。
以上です。分かる方お答えいただけると幸いです。

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

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

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

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

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

kei344

2017/04/12 07:22

ご自身で書かれたJavaScriptコードを質問文に追記し、「何」が「どのように」わからないのか、コードのどの部分で詰まっているのかなどを具体的に追記されたほうが回答が望めると思います。
guest

回答1

0

ベストアンサー

追加ボタンのidをadd、削除ボタンのidをdelとしました。
jQueryを利用しています。
イメージしているコードのサンプルが中途半端ですし、
処理イメージの説明の中の
「列(行のことでしょうか?)」や
「追加(値を表示のことでしょうか?)」が何を指しているかがわかりにくかったので
表1から表2に行ごと追加、削除するサンプルを回答いたします。

$('#add').click(function() { var cnt = $('#result').find('tr').size(); if (cnt >= 2) { alert('アラート'); return false; } var radio = $('input[name=check]:checked'); var fileName = $(radio.closest('tr').find('td')[1]).text(); var fileTime = $(radio.closest('tr').find('td')[2]).text(); var tr = '<tr><td><input type="checkbox" name="checkbox" value="' + (cnt + 1) + '"></td><td>' + fileName + '</td><td>' + fileTime + '</td></tr>'; $('#result').append(tr); }); $('#del').click(function() { $('#result input[type=checkbox]:checked').each(function() { $(this).closest('tr').remove(); }); });

投稿2017/04/12 08:56

sha

総合スコア141

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

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

hide09090909

2017/04/13 04:12 編集

ご回答ありがとうございます。 技術面のみでなく、質問の仕方までご指摘ありがとうございます。 ・追加ボタン押下で、選択した行が表2に追加されない。  ⇒ボタン押下時に一瞬追加されるが、自動で削除される。 ・表2にHTMLで行を2行追加し、追加ボタンを押下するとアラートは表示される。 何が原因かおわかりでしたら、ご回答いただけると幸いです。
sha

2017/04/13 05:04

コードのサンプルでは追加ボタンと削除ボタンのidがaaaで同じになっています。もしかすると追加ボタンを押下しただけで追加処理と削除処理が動いていませんか?ボタンのidを別にして試しても同じ結果になるか確認してみてください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問