javascript - 替换html元素,不解绑事件,应该怎么做?
PHP中文网
PHP中文网 2017-04-11 13:20:16
[JavaScript讨论组]
>     'click .enable': function(e, value, row, index) {
>             var that = $(this);
> 
>             // console.log(row);
>             // console.log($(that).closest("tr").find(".stop"));
>             $(that).closest("tr").find(".stop").replaceWith('已启用');
>             $(that).replaceWith('停用');
>             console.log($(that));
> 
> 
> 
>         },
>         'click .disable': function(e, value, row, index) {
>             var that = $(this);
> 
>             $(that).closest("tr").find(".start").replaceWith('已停用');
>             $(that).replaceWith('启用');
> 
>         }
目前用了relaceWith方法替换所选择的元素,但是事件也销毁了,请问大家有什么好的办法。

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
PHP中文网

代码没看太懂,如果是绑定事件的DOM结构被拿掉了的话,可以绑到它的父级做事件代理。

另外,事件处理里的this已经被$包装过也缓存过了,就不要再次包装了吧。

天蓬老师

可以使用事件代理,给元素的父元素绑定时间

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号