在循环中切换功能

时间:2014-01-30 13:28:45

标签: javascript php jquery

我希望开发一个消息收件箱部分 消息主题将显示在循环中....该部分已结束,但问题是如何通过使用“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 
} ?>

2 个答案:

答案 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代码,但你应该对我的例子很好。

DEMO:http://jsfiddle.net/3NW7C/

答案 1 :(得分:0)

请注意你的for循环说:    for($i=0; $o<10; $i++){ ?> 如果未分配$ o,则可能无法获得您想要的结果for($i=0; $i<10; $i++){ ?> 将第二个变量从$ o更改为$ i。

快乐编码:)