Sun*_*noy 0 ajax jquery codeigniter
我有一个PHP应用程序,其中一个页面上有一个删除功能.我允许用户通过点击标签从他们的个人资料中删除标签.用户单击标记后,HTML中先前显示标记的内容区域将使用新的标记集进行更新.
现在的问题是,从标签列表中,用户第一次点击标签时,它就会被删除.如果用户现在点击另一个标签(来自刷新区域),则没有任何反应.
$("a.single_tag").click(function(){
the_id = $(this).attr('id');
$.ajax({
type: "POST",
data: "data="+the_id,
url: "<?php echo site_url('user/deletetag/');?>/",
success: function(msg)
{
$("#current_tags").fadeIn("slow");
$("#current_tags").html(msg);
}
});
Run Code Online (Sandbox Code Playgroud)
谢谢
而不是像这样使用.click(),你想要.live('click', func),像这样:
$("a.single_tag").live('click', function() {
Run Code Online (Sandbox Code Playgroud)
当您使用.click()绑定click处理程序到这些元素时,但当内容被替换时,没有处理程序的新元素就在那里.随着.live()它click在它冒泡document并执行时监听事件......当页面加载或稍后添加时,元素是否存在,这无关紧要......修复你的问题:)