Javascript 显示/隐藏不';除非刷新页面,否则无法工作

Javascript 显示/隐藏不';除非刷新页面,否则无法工作,javascript,jquery,Javascript,Jquery,编辑:为了清晰起见,我编辑了这个问题。 编辑2:我解决了一半的问题 下面是一个简单的脚本,用户可以删除他们上传的图片 取决于数据库中是否保存了图像。应显示切换或上载图标 问题在于单击删除按钮时,图片和切换按钮会被删除,但上传图标不会显示(除非页面刷新) 我在这里遗漏了什么?一旦进入success函数的上下文,此链接就不再是链接。我保存了这个并在内部使用了它,这应该可以做到 另外,我不确定查找是否真的能起作用。根据您的示例,我不确定#toggle元素是否实际嵌套在.delete_图标中 如果它们不

编辑:为了清晰起见,我编辑了这个问题。 编辑2:我解决了一半的问题

下面是一个简单的脚本,用户可以删除他们上传的图片

取决于数据库中是否保存了图像。应显示切换或上载图标

问题在于单击删除按钮时,图片和切换按钮会被删除,但上传图标不会显示(除非页面刷新)


我在这里遗漏了什么?

一旦进入
success
函数的上下文,此链接就不再是链接。我保存了
这个
并在内部使用了它,这应该可以做到

另外,我不确定
查找
是否真的能起作用。根据您的示例,我不确定
#toggle
元素是否实际嵌套在
.delete_图标中

如果它们不是,您可能希望执行
$('#toggle'+ID)
,而不是使用find。它是一个ID选择器,所以不会影响性能

$(function(){
  $('.delete_icon').on("click",function() {

    var ID = $(this).attr("id"),
        dataString = 'image_id='+ ID,
        $this = $(this);

    if( confirm("Are you sure you want to remove this image ?") ) {
      $.ajax({
        type: "POST",
        url: "delete.php",
        data: dataString,
        cache: false,
        success: function(html) {

          $this.closest(".content").hide();

          $('#toggle'+ID).hide()

          $('#upload'+ID).show();

        }
      });
    }
    return false;
  });
});

在代码中添加了几个问题,如果这对您不起作用。非常感谢您的快速回复!是,var$content=$(“.content”).hide();意图:一旦图片被删除,它也会隐藏被切换的图片。否则,已删除的图片将从数据库中删除,但除非刷新页面,否则该图片仍然可见。upload_图标和.toggle不在“content”分区内。到目前为止,我尝试了你的代码,但仍然不起作用…调整了它。我想我会帮你的,只要
.content
.delete\u icon
。。。否则,您应该将其设置为
ID
。您不想只执行
$('.content').hide()
,因为这会一次命中所有的内容div,所以您应该通过控制台记录将要显示的内容
隐藏的内容
来查看是否命中了您想要的内容。。或者如果其中任何一个是空白的。谢谢你的帮助。我只是编辑了我的问题,让它更清楚。问题是,一旦图片被删除,“切换”和“上传”按钮应该切换,而不会切换(除非页面刷新)。不过,我对你的答案投了赞成票。
$(function(){
$('.delete_icon').on("click",function() 
{
var ID = $(this).attr("id");
var dataString = 'image_id='+ ID;
$this = $(this);
if(confirm("Are you sure you want to delete this image ?"))
{
$.ajax({
type: "POST",
url: "delete.php",
data: dataString,
cache: false,
success: function(html){

$('#image'+ID).remove()
$('#toggle'+ID).remove()
$('#upload'+ID).show();
});
}
return false;
});
});
$(function(){
  $('.delete_icon').on("click",function() {

    var ID = $(this).attr("id"),
        dataString = 'image_id='+ ID,
        $this = $(this);

    if( confirm("Are you sure you want to remove this image ?") ) {
      $.ajax({
        type: "POST",
        url: "delete.php",
        data: dataString,
        cache: false,
        success: function(html) {

          $this.closest(".content").hide();

          $('#toggle'+ID).hide()

          $('#upload'+ID).show();

        }
      });
    }
    return false;
  });
});