Javascript 光滑的网格确保数据不会被调用

Javascript 光滑的网格确保数据不会被调用,javascript,slickgrid,Javascript,Slickgrid,我正在使用一个光滑的网格和以下javascript。问题是该控件从未转到ensureData()。有什么想法吗 grid.onViewportChanged.subscribe(function (e, args) { alert('1'); var vp = grid.getViewport(); alert('2'); loader.ensureData(vp.top, vp.bottom); alert('3'); }); function ens

我正在使用一个光滑的网格和以下javascript。问题是该控件从未转到ensureData()。有什么想法吗

grid.onViewportChanged.subscribe(function (e, args) {
    alert('1');
    var vp = grid.getViewport();
    alert('2');
    loader.ensureData(vp.top, vp.bottom);
    alert('3');
});

function ensureData(from, to) 
{          
    alert('55');
    var maxdata = Math.min(999, data.length);
    if (from < 0)
    from = 0;
    if (to > maxdata)
        to = maxdata;

    var fromPage = Math.floor(from / PAGESIZE);
    var toPage = Math.floor(to / PAGESIZE); // look-ahead

    while (fromPage <= toPage) {
        if (data[fromPage * PAGESIZE] == undefined) {
            data[fromPage * PAGESIZE] = null; // null indicates a 'requested but not available yet'

            var order = { "query": searchstr, "offset": (fromPage * PAGESIZE), "count": (((toPage - fromPage) * PAGESIZE) + PAGESIZE), "sort": sortcol, "order": ((sortdir > 0) ? "asc" : "desc") };
            req = $.ajax({
                type: "POST",
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                data: JSON.stringify(order),

                url: "OrderService.svc/GetOrderList",

                success: onSuccess,
                error: function (jqXHR, textStatus, errorThrown) {
                    if (textStatus != 'abort')
                        onError(fromPage, toPage);
                }
            });
            onDataLoading.notify();
        }
        fromPage++;
    }
}
grid.onViewportChanged.subscribe(函数(e,args){
警报(“1”);
var vp=grid.getViewport();
警报(“2”);
装载机确保数据(vp.top,vp.bottom);
警报(“3”);
});
功能保证数据(从,到)
{          
警报(“55”);
var maxdata=Math.min(999,data.length);
如果(从<0开始)
from=0;
如果(到>maxdata)
to=maxdata;
var fromPage=数学楼层(from/PAGESIZE);
var toPage=Math.floor(to/PAGESIZE);//向前看
而(从第0页开始)?“asc”:“desc”)};
req=$.ajax({
类型:“POST”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
数据:JSON.stringify(order),
url:“OrderService.svc/GetOrderList”,
成功:一旦成功,
错误:函数(jqXHR、textStatus、errorshown){
如果(textStatus!=“中止”)
onError(fromPage,toPage);
}
});
onDataLoading.notify();
}
fromPage++;
}
}
此时将显示警报1 此时将显示警报2 显示警报(错误加载数据)&最后
显示警报3….

页面加载时不应触发警报。顾名思义,它在视口更改时触发,即当用户滚动并且视口中的顶部和底部可见行更改时