Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用$this和prev等导航div的另一种方法_Javascript_Jquery_Ajax_Append - Fatal编程技术网

Javascript 使用$this和prev等导航div的另一种方法

Javascript 使用$this和prev等导航div的另一种方法,javascript,jquery,ajax,append,Javascript,Jquery,Ajax,Append,在ajax评论系统上工作,到目前为止一切都很好 现在我正在做收尾工作,遇到了一个问题 如果没有评论,则在评论div中放置一个div,简单地说“此博客没有评论” 在发布评论时,我试图删除此div。但是问题是,no comments div已删除,但评论未附加。我把这归因于我使用了.prev()和.nearest(),我删除了它想要的东西?我可能错了 因此,如果没有评论,结构会是什么样子: <div class="commentson"> <div class="comme

在ajax评论系统上工作,到目前为止一切都很好

现在我正在做收尾工作,遇到了一个问题

如果没有评论,则在评论div中放置一个div,简单地说“此博客没有评论”

在发布评论时,我试图删除此div。但是问题是,no comments div已删除,但评论未附加。我把这归因于我使用了.prev()和.nearest(),我删除了它想要的东西?我可能错了

因此,如果没有评论,结构会是什么样子:

<div class="commentson">
    <div class="commentsholder"> 
        <div class='nocomments'>This update has no comments. Why not add one?</div>
    </div>
<form class="addcomment" action="process/addcomment.php" method="post">
    <div class="commentbutton">
    <input type="text" maxlength="250" name="addpostcomment" class="addpostcomment" placeholder="Add Comment... (max 60 characters)" />
    <input type="submit" id="addcommentbutton" class="addcommentbutton" value="Post" disabled/>
    </div>
    <span class="countdownCommentLength"></span>
</form>
如果我删除.prev并像这样使用prepend,这实际上很好:

  $this.closest('.addcomment').prepend("APPENDED COMMENT");
但我的评论顺序不对。如果我删除.prev并简单地执行.append,那么注释就会像您所期望的那样附加到表单下


我试过很多组合,但就是找不到另一种有效的方法。请注意,每个页面上都有多个类似的表单。

HTML中的哪个对象是
$this
?我们无法在不知道的情况下遵循您的代码。是“添加评论”按钮吗?抱歉,总是忘记添加。我来编辑这个问题。this在表单顶部声明为$this=$(this),那么哪个对象是
this
?我想知道引用的HTML对象是什么?提交的表单submit:)一定还有其他一些事情你没有透露,因为当我在JSFIDLE中构建代码/HTML的迷你版本并按下“添加”按钮时,它会工作:
  $this.closest('.addcomment').prepend("APPENDED COMMENT");