js添加删除内容的问题.

jex_久尘 2014-04-22 09:07:04
<body>
<input type="button" class="add" value="添加">
<script>
$(document).ready(function(){
$(".add").click(function(){
$("body").append("<div class=\"Tab_main_n\" style=\"width:100px;height:100px;border:1px solid #ccc\"><input type=\"button\" class=\"del\" value=\"删除\"></div>");
})
$(".del").click(function(){
$(this).parent(".Tab_main_n").remove();
})
})
</script>
</body>
添加后要怎么删除呢?怎么写才是对的.
...全文
109 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
所以现在很多网站都用的是1.4.2的版本,追求稳定啊。
jex_久尘 2014-04-24
  • 打赏
  • 举报
回复
引用 3 楼 ivyandrich 的回复:
我感觉问题出在这里
$(".del").click(function(){
$(this).parent(".Tab_main_n").remove();
})
因为你.del这个对象是动态创建的,所以针对动态创建的对象绑定事件时要用live方法
$(".del").live('click',
     function()
     {
         $(this).parent(".Tab_main_n").remove();
     }
)
恩,问题解决了,确实是这里出了点问题,唯一不足的是jqery1.9以后就把live方法给去掉了.
wylp_19 2014-04-22
  • 打赏
  • 举报
回复
引用 3 楼 ivyandrich 的回复:
我感觉问题出在这里
$(".del").click(function(){
$(this).parent(".Tab_main_n").remove();
})
因为你.del这个对象是动态创建的,所以针对动态创建的对象绑定事件时要用live方法
$(".del").live('click',
     function()
     {
         $(this).parent(".Tab_main_n").remove();
     }
)
顶顶
  • 打赏
  • 举报
回复
我感觉问题出在这里
$(".del").click(function(){
$(this).parent(".Tab_main_n").remove();
})
因为你.del这个对象是动态创建的,所以针对动态创建的对象绑定事件时要用live方法
$(".del").live('click',
     function()
     {
         $(this).parent(".Tab_main_n").remove();
     }
)
阿鱼 2014-04-22
  • 打赏
  • 举报
回复

原代码:
$(".del").click(function(){
$(this).parent(".Tab_main_n").remove();
})

修改为:
$("body").on('click','.del',function(){
$(this).parent(".Tab_main_n").remove();
})
原代码问题在于 用click进行绑定的时候 .del按钮还不存在,所以绑定无效。 改用on来绑定后,不论元素当前是否存在,绑定都有效。 click和on的绑定原理不一样,一个是直接绑定,一个是采用冒泡机制。 详情可以自行谷歌jquery的on方法。
Cocl 2014-04-22
  • 打赏
  • 举报
回复
$(".del").click(function(){
$(this).parent().remove();
})
这样就好了

87,910

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧