我希望开发一个消息收件箱部分 消息主题将显示在循环中....该部分已结束,但问题是如何通过使用“jQuery $ this.next”函数查看单击主题的内容部分。我将把代码放在下面
// php
<?php
for($i=0; $i<10; $i++){ ?>
<div id="sub<?php echo $i; ?>" class="subject">subject<?php echo $i; ?></div>
<div id="con<?php echo $i; ?>" class="content">content<?php echo $i; ?></div>
<?php
} ?>
答案 0 :(得分:4)
好吧,我们假设您有以下结构,我们假设每条消息的正文最初都是隐藏的:
<ul id="inbox">
<li class="message">
<h3 class="message-subject">Some subject</h3>
<p class="message-body">Some content</p>
</li>
</ul>
以下代码将在包含每条消息的元素上添加一个单击处理程序,仅在单击消息主题时才会调用该处理程序。然后将显示消息主题元素后面的元素。
注意:此技术称为事件委派,并且每个主题元素附加一个处理程序效率更高。
$('#inbox').on('click', '.message-subject', function () {
//.next() will retrieve the immediately following sibling of the h3 tag
$(this).next().show();
});
编辑:我看到你现在提供了你的HTML代码,但你应该对我的例子很好。
答案 1 :(得分:0)
请注意你的for循环说:
for($i=0; $o<10; $i++){ ?>
如果未分配$ o,则可能无法获得您想要的结果for($i=0; $i<10; $i++){ ?>
将第二个变量从$ o更改为$ i。
快乐编码:)