1
zzNucker 2013-08-23 17:18:38 +08:00
可能是alert的时候get还没取回结果
后面那个例子的alert是放在回调函数里的 |
2
reloop OP |
3
reloop OP |
4
davepkxxx 2013-08-23 17:30:09 +08:00 1
用$.ajax代替$.get,async设为false。
|
5
reloop OP @davepkxxx
改成这样 , 还是不能返回 function findQuery2(nameId) { $.ajax({ async:false, type: "POST", dateType:"XML", url: "search.xml", success: function(searcher){ var query=""; $(searcher).find("item").each(function(){ if( $(this).find("name").attr("id") == nameId ) { query = $(this).find("query").text(); alert(query); //这个能显示正确结果 } }); return query; }, error: function() { } }); } $(document).ready( function (){ $(".searcher").click(function(){ var nameId = $(this).attr("way"); var query = findQuery2(nameId); alert(query); //这个还是不行 })} ) |
6
davepkxxx 2013-08-23 18:00:10 +08:00 1
在$.ajax之前设置声明一个变量,在ajax的callback中为这个变量赋值,$.ajax之后在函数中return这个变量。
|