Javascript 选择parent()会在本应为同一链接的内容中发生变化<;a>;

Javascript 选择parent()会在本应为同一链接的内容中发生变化<;a>;,javascript,php,jquery,html,Javascript,Php,Jquery,Html,这就是我的问题: 我想选择类为“read_more hidden”的div。在第一个链接中,它选择了它,但在第二个链接中它没有。它表示未定义。有人能解释一下发生了什么吗 (我试图在来自数据库的大文本上创建“阅读更多…”链接) PHP while($row=mysql_fetch_assoc($result)) { $str==NULL; $offset==NULL; $max_length==NULL; $str=$row['subject']; $max

这就是我的问题: 我想选择类为“read_more hidden”的div。在第一个链接中,它选择了它,但在第二个链接中它没有。它表示未定义。有人能解释一下发生了什么吗

(我试图在来自数据库的大文本上创建“阅读更多…”链接)

PHP

while($row=mysql_fetch_assoc($result))
{
    $str==NULL;
    $offset==NULL;
    $max_length==NULL;
    $str=$row['subject'];
    $max_length = 3500;
    if (strlen($str) > $max_length)
    {
        $offset = ($max_length - 3) - strlen($str);
        $str = substr($str, 0, strrpos($str, ' ', $offset)) . '<br></br><a class="clicky" href="">read more...</a>';
    }

    echo'<div class="GTextBorder" >
        <center>
        <h3>
        <em>';
        if ($row['title']==NULL)
        {
            echo 'No title';
        }
        else
        {
            echo ''.$row['title'].'';
        }

    echo '</em></h3></center><br></br>
            <div class="read_more hidden" >'.$row['subject'].'
                <a class="clickya" href=""><i>less...</i></a>
            </div>
            <div class="item" >'.$str.'</div>
        <br></br>';
    echo '</div>';
    echo '<br></br>';
}
一些解释:
我首先取$row['subject'],这是一个长文本,我检查它是否超过3500个字符。如果超过3500个字符,那么我就把它放在readmore上。。我的第一个想法是制作两个单独的div(一个隐藏),一个普通的div,以便在阅读更多内容时。。单击时,两个div将更改。因此,将显示read_more div,并隐藏“.item”div。但由于某些原因,当第三个长文本打印为read more时。。link it无法选择整个GTextBorder div。我不知道为什么。

这个
read\u more
div是
.parent().prev()
,而不是
.parent().parent().prev()
。数据库包含3个文本。第一个和第三个字符超过3500个,当我按下第一个链接时,页面会发出“read\u more hidden”警报,第二个链接发出警报“未定义”我根本看不出它是如何工作的。
这是
a.clicky
.parent()
div.item
,而
parent().parent()
div.GTextBorder
。那么
.prev()
从那里开始
阅读更多内容
?我一点都不知道…我只是在说结果是什么…查看DOM检查器,确保所有嵌套都是它应该的样子。
阅读更多内容
DIV是
.parent().prev()
,而不是
.parent().parent().prev())
。数据库包含3个文本。第一个和第三个超过3500个字符,当我按下第一个链接时,页面会提示“read\u more hidden”,第二个链接提示“undefined”,我根本看不出它是如何工作的。
这是
a.clicky
.parent()
div.item
,和
parent().parent()
div.GTextBorder
。那么如何才能
.prev()
从那里阅读更多的内容呢?我一点也不知道……我只是在说结果是什么……查看DOM检查器,确保所有嵌套都是应该的方式。
$('.clicky').click(function(e){
    e.preventDefault();
    var id=$(this).parent().parent().prev().attr("class");
    window.alert(id);
});