读书人

$.each方法中的变量如何不可用

发布时间: 2012-04-20 15:27:03 作者: rapoo

$.each方法中的变量怎么不可用?

JScript code
             $("#button").click(function(){                var preSelector='';        $.getJSON("testAction",function(data){            $.each(data.arrayList,function(i,value){//arrayList是链表对象                preSelector=value+'ooooo'+preSelector;            });        });             //为什么在这里preSelector值为空呢?难道出了getJSON方法,值都消失了??           alert(preSelector);         });                


如上述代码,求救!谢谢

[解决办法]
你用firebug调试,1、确认此jquery方法语法都ok。
2、后台打断点,debug跟踪,看看是否正确进入后台,并且拿到资料,返回到jsp中。
我猜测,data有可能为null。
[解决办法]
each方法在回调函数里,在你执行回调函数的时候,alert已经执行了。你把alert方法回调函数里看看
[解决办法]
ajax实习异步操作,你getjson的时候也同时alert了,这时还没执行回调函数呢。

所以空。

你可以在回调函数里alert回调的内容看看。
[解决办法]
楼上说的对,你调用的是异步方法,当你去后台执行的时候,页面中的代码是不会等待你返回的,所以先执行了alert这句。你要想在下面使用的话,可以sleep一下,或者把异步调用改成同步调用。
[解决办法]
探讨

ajax实习异步操作,你getjson的时候也同时alert了,这时还没执行回调函数呢。

所以空。

你可以在回调函数里alert回调的内容看看。

[解决办法]
探讨

引用:

ajax实习异步操作,你getjson的时候也同时alert了,这时还没执行回调函数呢。

所以空。

你可以在回调函数里alert回调的内容看看。


对,是这样的。你应该把 alert(preSelector);换个位置:


Java code

$("#button").click(function(){
……

[解决办法]
探讨

引用:

引用:

ajax实习异步操作,你getjson的时候也同时alert了,这时还没执行回调函数呢。

所以空。

你可以在回调函数里alert回调的内容看看。


对,是这样的。你应该把 alert(preSelector);换个位置:


Java code

$("#button").click(function(……

读书人网 >J2EE开发

热点推荐