展开/折叠divs

6

我在一个页面上使用PHP / MySQL生成了多个可展开/折叠的框。

问题是,当我点击一个链接展开一个框时,所有框都会展开。

我想过在类名末尾添加帖子ID(<div class="postreplycontainer-POST_ID">),但我不确定这是否有效,因为我必须找到一种方法来更改jQuery。

这是一个有效的示例:http://jsfiddle.net/Draven/kUhkP/35/

请记住,我不能手动编写每个框,因为我正在从数据库中获取内容。

编辑:也许有人可以帮我解决一个附加问题。

我想在展开<div>时聚焦textarea框。我尝试使用与之前相同的技巧(使用.closest),但那行不通。

这是例子:http://jsfiddle.net/Draven/kUhkP/53/

此示例将始终聚焦第一个


1
谢谢所有回答的人!他们都有效,但我选择了不依赖于任何跟随div的表格的答案。 - Draven
3个回答

9

这里是FIDDLE代码示例。

$("a.postreply").click(function () {
    $(this).closest('.blog-container')
        .find('.postreplycontainer').slideToggle("fast");
});

0
如果你调用 $("div.postreplycontainer"),你将访问所有的div,如果该div总是在表格之后,那么可以使用:
$("a.postreply").click(function() {
    $(this).parents('table').next().slideToggle("fast");
});

滑动该div http://jsfiddle.net/kUhkP/39/


0

我认为这对你的问题应该没问题。

$("a.postreply").click(function () {
    $(this).closest('.blog-table').next().slideToggle("fast");
});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接