如果我有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');
但是如何使用它再次选择它?
答案 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');
}