2017-04-24 7 views
0

2つのボタングループ(アンカー要素)で小さなアンケートを行います。 ユーザーがグループ1で決定を下すと、グループ2が表示され、2番目の決定の後、クリックされたボタンの値をMySQLデータベースに書き込む必要があります。Javascript/JQuery:後でMySQL-DBに保存するためにクリックした要素を記録します

JavaScriptにはそれぞれJQueryに問題があります。

各グループのクリックされた各ボタンをどのようにプロトコルすることができますか?

https://jsfiddle.net/v2mtze2h/2/

の下には、小さな例を見つけることができます。

私は実際にはこの状態では動作しませんが、実際には分かりませんが、ボタンの2つのグループの違いを知っています。

私は最初は私が第二のグループのため

this.ad 

を使用することができない

firstclick = this.ad; 

を使用してボタンをクリックした識別。

ありがとうございます。

よろしく ラース

+0

考慮すべき最初のものは、ユニークな 'id'タグを使用しています。 –

+0

IDは一意である必要があります。各リストでID 1,2および3を再利用します。 1-1,1-2,1-3,2-1,2-2,3-3のようなものを試してください。ユニークなIDを持つので、ロジックが正しく動作しません。 – Shilly

答えて

0

このフィドルを参照してください。..彼らが選択されているとして、クリックされたIDを格納する配列を使用することを検討してください:

https://jsfiddle.net/v2mtze2h/4/

var clickedControlsOrder = []; 
$(document).ready(function(){ 
    $("a").click(function(){ 
     $("#second").removeClass("hidden").addClass("visible"); 
     $("#first").addClass("hidden"); 
     clickedControlsOrder.push($(this).prop('id')); 
     $('.info #info1').html(clickedControlsOrder.join(',')); 
    }); 
}); 

あなたが変更を行ってすることができますが配列を反復処理することでそれらを格納することができます。どのような方法であれ、テーブル/データベースに格納することができます。

+0

- あなたのIDが少し変更されました。あなたの質問に対するコメントは正しい - 重複IDは大きなノーではありません。 –

0

は、データ属性を使用し、各ボタンの上に親コンテナとアイテム数にグループ属性を設定するような何かを行うことができ

$('a').click(function(e){ 
 
    e.preventDefault(); 
 
    var $el = $(this), 
 
    group = $el.closest('[data-group]').data('group'), 
 
    item = $el.data('item'); 
 
    console.log('Button:', group + '.'+ item) 
 

 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="second" data-group="2"> 
 
    <span><a href="#" data-item="1">Button 2.1</a></span> 
 
    <span><a href="#" data-item="2">Button 2.2</a></span> 
 
    <span><a href="#" data-item="3">Button 2.3</a></span> 
 
</div>

関連する問題