🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

jQuery

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

HTML

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

Q&A

1回答

1092閲覧

jQueryを使って、アンケートの回答を同一IDでFirebaseに格納したいのですが…

退会済みユーザー

退会済みユーザー

総合スコア0

Firebase

Firebaseは、Googleが提供するBasSサービスの一つ。リアルタイム通知可能、並びにアクセス制御ができるオブジェクトデータベース機能を備えます。さらに認証機能、アプリケーションのログ解析機能などの利用も可能です。

jQuery

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

HTML

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

0グッド

0クリップ

投稿2019/11/10 06:27

編集2019/11/10 06:29

色々サイトも調べてみたのですが、意外と同様のQAも見当たりませんでした…
難しいのはアンケートフォームに記載したテキストではなく、
押したbuttonの中のテキストを抽出→ 複数回答を
まとめてfirebaseに格納する機能です。

1.jQueryで複数のアンケート(2択×4ページ)を1ページずつ表示し
2.その後、question1〜4でクリックされたボタンのみテキストを抽出し
3.Firebaseに保存

したいのですが、
丸2日格闘しているものの、うまくいかず困っています(`・ω・´;)
(そもそも不格好なコードでお恥ずかしいですが…)

HTML

1<div id="questions"> 2 <div id="question1"> 3 <p>あなたはどっち派?</p> 4 <button id="btn1" class="btn1" value="">インドア派</button> 5 <button id="btn2" class="btn1" value="">アウトドア派</button> 6 </div> 7 <div id="question2"> 8 <p>あなたはどっち派?</p> 9 <button id="btn3" class="btn2" value="">楽観的</button> 10 <button id="btn4" class="btn2" value="">悲観的</button> 11 </div> 12 <div id="question3"> 13 <p>あなたはどっち派?</p> 14 <button id="btn5" class="btn3" value="">挑戦的</button> 15 <button id="btn6" class="btn3" value="">安定的</button> 16 </div> 17 <div id="question4"> 18 <p>あなたはどっち派?</p> 19 <button id="btn7" class="btn4" value="">リーダー型</button> 20 <button id="btn8" class="btn4" value="">サポーター型</button> 21 </div> 22 </div> 23 24<div id="send">結果を送信</div>

javascript

1 2$(function() { 3 4 $('#btn1,#btn2').click(function() { 5 $('#question1').animate({opacity: 0}, 500,function(){ 6 $('#question1').css('display','none'); 7 $('#question2').css('display','block'); 8 $('#question2').animate({opacity: 1}, 1000); 9 }); 10 }); 11 $('#btn3,#btn4').click(function() { 12 $('#question2').animate({opacity: 0}, 500,function(){ 13 $('#question2').css('display','none'); 14 $('#question3').css('display','block'); 15 $('#question3').animate({opacity: 1}, 1000); 16 }); 17 }); 18 $('#btn5,#btn6').click(function() { 19 $('#question3').animate({opacity: 0}, 500,function(){ 20 $('#question3').css('display','none'); 21 $('#question4').css('display','block'); 22 $('#question4').animate({opacity: 1}, 1000); 23 }); 24 }); 25 $('#btn7,#btn8').click(function() { 26 $('#question4').animate({opacity: 0}, 500,function(){ 27 $('#question4').css('display','none'); 28 $('#send').css('display','block'); 29 $('#send').animate({opacity: 1}, 1000); 30 }); 31 }); 32}); 33 34 35const database = firebase.database().ref(); 36 37$(function() { 38 39 $('.btn1').on('click', function(){ 40 var personality_1 = $(this).attr("value"); 41 return(personality_1); 42 }); 43 $('.btn2').on('click', function(){ 44 var personality_2 = $(this).attr("value"); 45 return(personality_2); 46 }); 47 $('.btn3').on('click', function(){ 48 var personality_3 = $(this).attr("value"); 49 return(personality_3); 50 }); 51 $('.btn4').on('click', function(){ 52 var personality_4 = $(this).attr("value"); 53 return(personality_4); 54 }); 55 $("#send").on("click",function(){ 56 database.push({ 57 per01:personality_1, 58 per02:personality_2, 59 per03:personality_3, 60 per04:personality_4, 61 }); 62 }); 63});

みなさまのお知恵をお貸しください。
どうぞ宜しくおねがいします★

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

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

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

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

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

2KOH

2019/11/10 08:00

質問内容が不明瞭なのですが、「jQueryで複数のアンケート(2択×4ページ)を1ページずつ表示する方法と、question1〜4でクリックされたボタンのみテキストを抽出する方法と、Firebaseに保存する方法を教えて下さい」ということでしょうか。 それは質問ではなく丸投げといいます。
退会済みユーザー

退会済みユーザー

2019/11/10 09:19

2KOHさん ご返答ありがとうございます!^^ すでに「Queryで複数のアンケート(2択×4ページ)を1ページずつ表示する方法」はできておりまして…、ただ、4つのアンケートを最後まとめて、Firebaseにpush(格納)したいのですが、ここがどうしても実装できずにおります。 一つひとつのアンケートを別々のIDで格納することはできるんですが、同一IDにて行うことが苦戦しております。2KOHさんは、おわかりになりますでしょうか?
2KOH

2019/11/10 09:58

質問内容に、わかっていることは何か、わからないことや聞きたいことは何かを明記するようにしてください。 また、Firebaseに格納する方法がわからないというのであれば、jQuery とかボタンのテキストの抽出とかは無関係です。 無関係なものは質問内容からすべて除外し、Firebaseに格納する方法だけを尋ねる内容で質問し直してください。 ちなみに、私は Firebase を触ったことがないため、Firebase に関しては答えられません。
guest

回答1

0

ここに答えがあるようにおもいますが、どうでしょうか?

https://firebase.google.com/docs/database/admin/save-data?hl=ja#section-ways-to-save

もし、ドキュメント読んでも分からないなら、質問を変える方が回答する人たちに優しいとおもいますよ。

投稿2019/11/11 23:54

odyu

総合スコア548

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問