jQuery MiniUI

标题: datagrid的事件是否有办法重写? [打印本页]

作者: asd1122    时间: 2022-6-13 11:07:56     标题: datagrid的事件是否有办法重写?

datagrid的事件有办法重写吗?现在的情况是有一个全局的事件xx.on('headercellclick', function(e) {if(e.column.name=='action'){addRow('null', 'null');}});
但不想通过修改这个全局事件的方式去添加特例情况,例如在某些业务下,点击表头的action列,不需要触发addRow方法。
我在此业务自己的js中通过这样的方式xx.on('headercellclick', function(e) {if(e.column.name=='action'){//addRow('null', 'null');}});还是会触发addRow方法没有产生效果,我也试过xx.un('headercellclick');方式去解绑,也没有效果

作者: felt    时间: 2022-6-13 14:54:50

事件解绑只能通过函数名解绑
xx.un("headercellclick",fn)
你这里不需要生效的表格比如可以给个特殊自定义属性,不需要的话就设置一下,事件处理里面判断下有没有这个属性。
作者: asd1122    时间: 2022-6-13 15:51:26

felt 发表于 2022-6-13 14:54
事件解绑只能通过函数名解绑
xx.un("headercellclick",fn)
你这里不需要生效的表格比如可以给个特殊自定义 ...

我看了页面的datagrid是通过on绑定function的,那un在什么时候可以调用生效?我在页面初始化方法,drawcell、update、load事件中都试了,un绑定function里的打印都没有被触发。
作者: felt    时间: 2022-6-13 16:09:23

asd1122 发表于 2022-6-13 15:51
我看了页面的datagrid是通过on绑定function的,那un在什么时候可以调用生效?我在页面初始化方法,drawce ...

只能是函数名,不支持匿名函数。
作者: asd1122    时间: 2022-6-13 16:16:31

felt 发表于 2022-6-13 16:09
只能是函数名,不支持匿名函数。

意思是xxx.on("headercellclick",function(e){addRow()});不能通过xxx.un("headercellclick",fn)的方式去解绑?

作者: felt    时间: 2022-6-13 18:07:05

asd1122 发表于 2022-6-13 16:16
意思是xxx.on("headercellclick",function(e){addRow()});不能通过xxx.un("headercellclick",fn)的方式去 ...

是的。




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2