刷新后如何选择相同的div

时间:2013-01-27 22:56:45

标签: javascript jquery css ajax

如果我有5个这样的div:

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

可以通过单击另一个来更改所选的div。现在,如果我使用ajax调用刷新容器的内容,我想保持选择div。我如何实现这一目标?

我知道我可以使用以下方法获取所选的div:

var selectedDiv = $('.selected');

但是如何使用它再次选择它?

3 个答案:

答案 0 :(得分:4)

在进行Ajax调用之前,获取所选div的索引并将其存储在变量中:

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

然后,在更新内容后,使用索引选择正确的div:

$('#container div').eq(selected_index).addClass('selected');

答案 1 :(得分:0)

编辑:因为看起来在我做lol之前几秒就发布了相同的答案

var selected

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

然后选择元素

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

当用户选择div

时执行此操作

var selected

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

然后使用.eq(selected)

再次选择元素

答案 2 :(得分:0)

更新你的变量以存储div的索引。

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

然后在ajax调用的success函数中将类设置为先前选择的div。

success: function(){
  $('#container div:eq(selectedDiv)').addClass('selected');
}