我正在使用jquery的sortable来求助一个列表。这些项目已编号,因此我希望能够在度假村之后指出新的数字。最初,我在进行排序后重新加载了页面。但是,我只是“发现”了ajax并发现它可能是一个更清洁的解决方案。我的代码几乎可以工作,除了一个问题。在排序之前首次加载页面时,会隐藏一堆span标记;然而,在我做了ajax之后,它们变得不被遮挡,我希望它们保持隐藏状态。我试过了:
$.ajax({
url: "/main_scripts/sort_chapters_and_sections.php",
type: "POST",
data: newOrder,
success: function(thing_reordered){ $(".inline_link_list").html(thing_reordered);
$("span").each(function(){
if ($(this).attr('class').match(/\bspan_hidden/)){
$(this).hide();
}
});
}
});
但是,在通话结束后,我的span_hidden标签将被取消隐藏。我的猜测是ajax调用还没有完成,所以我的“span_hidden”标签还没有在浏览器中,随后,还没有什么可隐藏的。如果我能理解如何确保完成ajax调用,我可以测试这个理论。任何帮助将不胜感激。
答案 0 :(得分:0)
if语句似乎错了。 此外,您不需要使用each()进行这样简单的搜索。
试试:
$('.span_hidden').hide();