1

私がそのように5つのdivを持っている場合:

<div id="container">
   <div class="selected"></div>
   <div></div>
   <div></div>
   <div></div>
   <div></div>
</div>

選択したdivは、別のdivをクリックして変更できます。ここで、ajax呼び出しを使用してコンテナーのコンテンツを更新する場合、divを選択したままにしておきます。どうすればこれを達成できますか?

私は私が使用することによって選択されたdivを取得できることを知っています:

var selectedDiv = $('.selected');

しかし、これを使用して再度選択するにはどうすればよいですか?

4

3 に答える 3

4

Ajax 呼び出しを行う前に、選択したインデックスを取得divして変数に格納します。

var selected_index = $('#container div.selected').index();

次に、コンテンツを更新した後、インデックスを使用して正しい div を選択します。

$('#container div').eq(selected_index).addClass('selected');
于 2013-01-27T23:00:46.840 に答える
0

編集:私がする数秒前に同じ答えが投稿されているようです笑

変数が選択されました

 $('div').click(function(){
    selected = $("#selected").index()+1;
    })

次に要素を選択します

var element = '.div-class:nth-child('+selected+')';
$(element)

ユーザーがdivを選択したときにこれを行います

変数が選択されました

$('div').click(function(){
selected = $("#selected").index();
})

を使用して要素を再度選択します。.eq(selected)

于 2013-01-27T23:01:21.573 に答える
0

変数を更新して、div のインデックスを格納します。

var selectedDiv = $('#container div').index($('.selected'));

次に、ajax 呼び出しの成功関数で、クラスを以前に選択した div に設定します。

success: function(){
  $('#container div:eq(selectedDiv)').addClass('selected');
}
于 2013-01-27T23:02:26.043 に答える