Javascript Gridx/Dojo&;jQuery:排序完成时是否有回调?
Javascript Gridx/Dojo&;jQuery:排序完成时是否有回调?,javascript,jquery,dojo,node-webkit,dojo.gridx,Javascript,Jquery,Dojo,Node Webkit,Dojo.gridx,此表是在NodeWebkit中使用GridX/dojo生成的。“[BV][B][V]”是jQuery使用类选择器处理的链接。但是,一旦我对网格进行排序,侦听器将取消绑定。如何重新应用单击功能?排序和渲染完成时是否有回调?我知道在gridx中排序完成时没有回调或事件 但是,在对整个栅格进行排序或过滤时,将重新渲染该栅格。因此,您可以使用以下内容: grid.connect(grid.body, 'onRender', function(){ $(document).on("click",
此表是在NodeWebkit中使用GridX/dojo生成的。“[BV][B][V]”是jQuery使用类选择器处理的链接。但是,一旦我对网格进行排序,侦听器将取消绑定。如何重新应用单击功能?排序和渲染完成时是否有回调?我知道在gridx中排序完成时没有回调或事件 但是,在对整个栅格进行排序或过滤时,将重新渲染该栅格。因此,您可以使用以下内容:
grid.connect(grid.body, 'onRender', function(){
$(document).on("click", "a.myBVlink", function() {
...
});
$(document).on("click", "a.myBlink", function() {
...
});
$(document).on("click", "a.myVlink", function() {
...
});
});
我创建了一个包装器div,并将click listener添加到其中,作为-
$('#gridWrapper').on('click','.myLinkClass',function(){
console.log('clicked');
console.log(this);
});
gridWrapper
未更改。因此,侦听器保持活动状态,并且无论排序如何,.myLinkClass
选择器都会选择
。就像@mccannf initiated一样,我使用重新渲染事件。为了防止重复工作,我只使用一个计数变量,并且只做第二次工作。注意:如果开始时网格为空,则我将计数器设置为1,因为该事件只调用一次
var countRender = 0;
if (grid.store.data.length == 0) countRender=1;
grid.connect(grid.body, 'onRender', function(gridName){
if (!countRender++) return;
countRender=0;
...
});
这很有效。但是渲染两次-对我来说不是问题。