Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.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 使用ajax删除帖子后淡出整个div_Javascript_Jquery_Html_Ajax - Fatal编程技术网

Javascript 使用ajax删除帖子后淡出整个div

Javascript 使用ajax删除帖子后淡出整个div,javascript,jquery,html,ajax,Javascript,Jquery,Html,Ajax,我正在尝试.fadeOut()从数据库中删除一个div的内容。这个div及其内容是echo通过PHP 下面是echophp代码 echo '<form action="deletepost.php" method="post" enctype="nultipart/form-data"> <div class="postSlate"> <input style="display: none" type="submit" name="deletepost"

我正在尝试
.fadeOut()
从数据库中删除一个div的内容。这个div及其内容是
echo
通过
PHP

下面是
echo
php代码

echo '<form action="deletepost.php" method="post" enctype="nultipart/form-data">
  <div class="postSlate">
    <input style="display: none" type="submit" name="deletepost" id="deletepost" value="Delete">
    <label for="deletepost"><i class="typcn typcn-delete clsup2"></i></label>
    <input type="text" style="display: none" name="reqid" id="reqid" value="'.$req_id.'">
</form>
<ul class="slateDetails">
  <a href="userprofile.php?userid='.$post_id.'">
    <li><img class="exdetails" src="'.$profimages.'"></li>
    <li>'.$cname.'</li>
  </a>
</ul>
<div class="slateImg"><img src="'.$commodityimg.'"></div>
<div class="slateTitle extitle">
  <p>'.$req_title.'</p>
</div>
<div class="slateBrief">
  <p>'.$req_brief.'</p>
</div>
<div class="slateBtn">  </div>
</div>'

从代码中你会看到,我尝试使用
.find()
功能来
.fadeOut()
这个
div
来承载特定的帖子,但是帖子被从数据库中删除了,所以它不是
PHP
问题。请问有什么解决办法

find方法将尝试在上下文中的选择器中查找项。在您的情况下,
$(“#deletepost”)
选择器将返回id为
deletepost
的输入元素的jQuery元素,并且它没有任何内部内容。
postSlate
deletepost
的父容器div。因此,请使用任何可以获取外部容器的方法

下面是如何使用
最近的
方法

$('#deletepost').closest('div.postSlate').fadeOut();
另一个选项是
parent
方法。但是,当您完全确定项目是您的直接父项时,请使用“父项”
closest()
将向外遍历,直到找到匹配项


此外,还要确保每个元素没有唯一ID。如果在循环中呈现多篇文章,可以使用css选择器连接
单击
事件,并使用相对选择器方法(如
最近的
根据需要查找

查找
方法将尝试在上下文中查找选择器中的项。在您的情况下,
$(“#deletepost”)
选择器将返回id为
deletepost
的输入元素的jQuery元素,并且它没有任何内部内容。
postSlate
deletepost
的父容器div。因此,请使用任何可以获取外部容器的方法

下面是如何使用
最近的
方法

$('#deletepost').closest('div.postSlate').fadeOut();
另一个选项是
parent
方法。但是,当您完全确定项目是您的直接父项时,请使用“父项”
closest()
将向外遍历,直到找到匹配项


此外,还要确保每个元素没有唯一ID。如果在一个循环中呈现多篇文章,可以使用css选择器连接
单击
事件,并使用相对选择器方法(如
最近的
根据需要查找

因为
id
属性在同一文档中应该是唯一的,请尝试通过公共类更改重复的属性,所以
#deletepost
应该是
。deletepost

<input style="display: none" type="submit" name="deletepost" id="deletepost" value="Delete">

因此,您的选择器将转到父级,因为
#deletepost
.postSlate
的子级,因为
id
属性在同一文档中应该是唯一的,请尝试通过公共类更改重复的属性,因此
#deletepost
应该是
.deletepost

<input style="display: none" type="submit" name="deletepost" id="deletepost" value="Delete">

因此,您的选择器将转到父项,因为
#deletepost
的子项。postSlate

请将
numpart
更正为
multipart
请将
numpart
更正为
multipart
当我这样做时,假设我有5篇文章(12345),并删除第四篇文章(4),第一篇文章(1)将是一个淡出。是否有修复程序?这意味着您对文档中的元素有重复的Id。读我的最后一段。您不应该对jQuery代码使用ID。使用相对选择器。当我这样做的时候,比如说我有5篇文章(12345),我删除了第4篇文章(4),第一篇文章(1)就会淡出。是否有修复程序?这意味着您对文档中的元素有重复的Id。读我的最后一段。您不应该对jQuery代码使用ID。使用相对选择器。当我这样做的时候,比如说我有5篇文章(12345),我删除了第4篇文章(4),第一篇文章(1)就会淡出。是否有修复方法?是的,您必须使用类而不是id的
#deletepost
。当我这样做时,假设我有5篇文章(12345),我删除了第4篇文章(4),第一篇文章(1)将淡出。有修复方法吗?是的,您必须使用类而不是id的
#deletepost
$('#deletepost').parent('.postSlate').fadeOut();