2009-10-06 22 views
0

我正在使用jquery和uploadify将照片上传到服务器。上传照片后,他们使用ajax添加到div容器。除DELETE按钮外,一切都很好。所有删除按钮在页面加载时工作,但通过ajax添加的按钮不起作用。我想这是因为我定义的功能,使图像删除,并没有使用删除(表格删除)的“经典”的方式:JavaScript不影响用javascript添加html代码

// Delete photo    
    $(".blog_slike .delete_slika").click(function() { 
     var commentContainer = $(this).parent().parent(); 
     var id = $(this).attr("id"); 
     var string = 'id='+ id ; 

     $.ajax({ 
      type: "POST", 
      url: "./include/ajax-edit/delete.php?polje=blog_slika", 
      data: string, 
      cache: false, 
      success: function(){ 
      commentContainer.fadeOut("slow"); 
      $('#load').fadeOut(); 
      }  
     }); 

     return false; 
    }); 

任何想法如何使按钮的工作它使用append()功能加入到之后的HTML代码?

一件事...将照片添加到TinyMCE的编辑,我使用此功能:

<a href=\"javascript:;\" onmousedown=\"tinyMCE.execCommand('mceInsertContent',false,'$slike_u_sadrzaj');\">Ubaci sve slike u blog</a> 

...这是还增加了页面加载。如何将内容添加到位置$slike_u_sadrzaj以及如何删除它?

感谢, 岛

回答

9

您需要的jQuery live方法。

在jQuery 1.3中添加:为所有当前和将来匹配的元素绑定事件处理程序(如点击)。也可以绑定自定义事件。

jQuery documentation

示例代码:

$(".blog_slike .delete_slika").live('click',function() { 
+0

太好了!就是这样,谢谢!还有一件事...如何使按钮褪色?这是当前的代码:$(“。blog_slike .delete_slika”)。fadeTo(“fast”,0.3);我试过这个:$(“。blog_slike .delete_slika”)。live(function(){fadeTo(“fast”,0.3)};但是没有成功.. –

+1

Live仅用于事件。使用CSS实现opacity或调用jQuery在创建新元素之后 – jantimon

+0

我看到了......如何在创建新元素后调用jQuery?你究竟是什么意思?谢谢 –