小源丶同学 2016-12-22
背景
一套老代码,页面使用taglib生成的,里面生成绑定是某些操作事件,并且是整个系统都按同一种方式处理。现在改造该系统,需要取消原来的操作换上新的事件。
实现
直接在本地写新的JS函数,并且使用
$("#button").unbind("click"); $("#button").bind("click",function(){});
绑定新的js函数,并且解绑原来的JS事件处理函数。
测试发现原有函数依旧会被执行。查找后发现原来函数是直接在DOM上写的 onclick="test()"方式实现,仅通过unbind是不能解绑这种类型的事件,需要移除onclick属性实现。增加以下代码,测试原有函数已经不会再被执行。
$("#button").removeAttr('onclick');
<table id="table" class="table table-striped table-bordered table-hover table-nowrap" width="100%&qu