2017-10-23 14 views
0

私はそれにアコーディオンを持つモーダルを持っています。モーダルウィンドウを開くことができるページ上の各イメージのアンカータグがあります。モーダルの内側には、スライドスイッチがあり、ユーザーはその画像の値をオンまたはオフに切り替えることができます。以前の入力値が変更されたときに、現在の入力値のみを取得するにはどうすればよいですか?

特定の画像で1つの入力が変更された後、望ましくない動作が発生します。以前に変更された入力値の値も受け取っています。

私が見たいのは、各画像に独自の値、つまりその画像に固有に変更された値があることです。私は他の画像から値を見るべきではありません。また、特定の画像の値を に変更すると、その値が他の画像でtrueに設定されているのを見たくない場合もあります。私はこれがすべて意味があることを望みます。私はJavaScriptに精通しているわけではありませんが、可能な限り説明することを試みました。

これにはJavaScriptを有効にし、それを修正する必要があり

$(".onoffswitch ").off("click").on("click", function(){ 

を使用して

$(".glyphicon-tags").on('click', function(){ 
    var iid = $(this).data('iid'); // this is the imageId 

    $(".onoffswitch ").on("click", function(){ 
     var tid = $(this).data('tid'); // this is the tagId 
     alert(iid + ' ' + tid); 
    }); 
    }); 

答えて

1

のように見えるものです。

グリフコンタグがクリックされるたびに、 "onoffswitch"のための余分なイベントハンドラを追加し、古いものを削除しないでください。次回のオンオフスイッチをクリックすると、すべて定義されたイベントハンドラが実行されます。ある要素にイベントハンドラを設定しても、IE6などを実行している場合を除いて古いものは削除されません。既存のハンドラのリストに追加されます。

"off"メソッドは、要素で以前に定義されたイベントハンドラを削除します。渡すことができるオプションの詳細については、http://api.jquery.com/off/を参照してください。

+0

その説明をありがとうございます!私はこれを試して、それはクリックされた画像に値を制限するように見えます。ただし、1つの画像に対して変更されたスイッチは、クリックした他の画像に対して同じ値を示しています。これが起こらないようにする方法はありますか?その特定の画像に対して実際に変更された入力値のみを表示しますか? – NaN

+0

申し訳ありません私はあなたにとても従っていません。もっと正確な例がありますか?たぶん新しい質問をするのは簡単です - コメントはそのような詳細を議論する最良の場所ではありません – ADyson

+0

確かにADYSON、私は新しい質問をします。ご協力いただきありがとうございます。新しい質問でお会いしたいと思います。 :) – NaN