读书人

js中预载入数据,该怎么解决

发布时间: 2012-03-22 17:43:57 作者: rapoo

js中预载入数据
如代码所展示,想要:
存放当前页面记录、下一页记录、上一页记录。但是运行时出了 success: function(result){},list便为空。
在js中,该赋值是什么类型呢?以c++为例,只是将地址赋值给list了吗,所以出了function,对象清空,于是所指向的也为空?
有没有什么办法?另外,有没有必要?

JScript code
    var nowList;    var nextList;    var lastList;    function loadNext(isNext)    {        var which;        if(isNext)        {            which = String(page + 1);        }        else        {            which = String(page - 1);        }        alert(which);        $.ajax({        url: "ajax/getArticle.ashx",        type: "get",        datatype: "xml",        data:{pagesize:"10",page:which,sort:"desc"},        success: function(result)        {            if(isNext)            {                nextList = $(result).find("test");            }            else            {                lastList = $(result).find("test");            }        },        error:function(xq,ts,t)        {            loadNext(isNext);        }        });    }    function next()    {        page++;        lastList = nowList;        loadNext(true);        $("#articleList").text("");        showList();    }


[解决办法]
这个是异步的问题 和什么地址啥的没关系
楼主的代码若在ajax外部alert下那三个list 都是undefined 这是ajax异步导致的
解决方法就是在回调函数中改变了list值后 接着在后边做余下逻辑的处理

读书人网 >Ajax

热点推荐