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

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

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

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

HTML

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

Q&A

解決済

1回答

2739閲覧

select optionを選択しテーブルに追加したい

shoshi

総合スコア18

jQuery

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

HTML

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

0グッド

0クリップ

投稿2020/05/19 10:25

編集2020/05/19 10:50

したいこと・わからないこと
1.select optionで選択したところの情報を保存
2.ボタンクリックorダブルクリックでテーブルに追加
3.select optionから追加したものを非表示にする
※.すでに追加されているものは追加しない。

html

1<select id="fruit"> 2<option value= "150円">リンゴ</option> 3<option value= "200円">ブドウ</option> 4<option value= "150円">レモン</option> 5</select> 6 7<input type="button" value="追加" disabled> 8 9<table> 10<thead> 11<tr> 12<th>名前</th> 13<th>単価</th> 14</tr> 15</thead> 16 17<tbody> 18... 19

jquery

1$(function(){ 2 $('option[value]').click(function(){ 3 var fruits = $('option[value]:selected').val(); 4 $("button").prop("disabled", false); 5 }); 6 }); 7 8$(function(){ 9 $('button').click(function(){ 10 $('tbody') 11 .append('<tr ></tr>'); 12 }); 13 }); 14

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

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

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

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

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

m.ts10806

2020/05/19 12:59

「保存」は何を意図していますでしょうか。 3つのそれぞれの要件、個々に調べると出てくる情報は少なくないかと思いますが、自身で調べたこと試したことはあるのでしょうか。
guest

回答1

0

ベストアンサー

こんにちは、下のような感じで出来ると思います。

HTML

1 <select id="fruit"> 2 <option value="150円">リンゴ</option> 3 <option value="200円">ブドウ</option> 4 <option value="150円">レモン</option> 5 </select> 6 7 <input type="button" value="追加" /> 8 9 <table> 10 <thead> 11 <tr> 12 <th>名前</th> 13 <th>単価</th> 14 </tr> 15 </thead> 16 <tbody></tbody> 17 </table>

jQuery

1$(function () { 2 //追加ボタンをクリックした時 3 $("input[type='button']").on("click", function (evt) { 4 //選択中のオプションの取得 5 var option = $("#fruit option:selected"); 6 //既にテーブルに追加されているかの確認(追加されている場合optionがdisabledになっている) 7 var is_disabled = option.attr("disabled"); 8 //テーブルに追加されている場合何もせず。 9 if (is_disabled) { 10 return; 11 } 12 //フルーツの名前を取得 13 var name = option.text().trim(); 14 //フルーツの値段を取得 15 var price = option.val().trim(); 16 //テーブルに追加するのでoptionをdisabledに設定する。 17 option.attr("disabled", "disabled"); 18 //tbodyを取得 19 var target = $("tbody"); 20 //tbodyにフルーツの名前と価格のhtmlを追加。 21 target.append("<tr><td>" + name + "</td><td>" + price + "</td></tr>"); 22 }); 23}); 24

投稿2020/05/19 13:55

fake_shibe

総合スコア806

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

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

shoshi

2020/05/20 07:15

回答ありがとうございます! 期待通りの動作になりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問