首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

怎么获取JQUERY AJAX返回的JSON结果集

2012-09-15 
如何获取JQUERY AJAX返回的JSON结果集代码如下:我写了个方法,用于查询结果,但debug过程中发现结果集有数据

如何获取JQUERY AJAX返回的JSON结果集
代码如下:我写了个方法,用于查询结果,但debug过程中发现结果集有数据,我如何通过变量获取呢?

JScript code
function getChildNodeArrayByParentID(categoryCode) {            $.ajax(            {                type: "get",                url: "DynamicMenuItemsHandler.ashx",                data: { MenuItemCode: categoryCode },                async: false,                                success: function(data) {                     return data;                }            });        }var jsonArray = getChildNodeArrayByParentID(01);


var jsonArray = getChildNodeArrayByParentID(01);
我这样获取的结果是undefined结果,但方法里舒适返回结果了,请赐教。

[解决办法]
给你一个我的做参考
HTML code
     function searchStu(page){//AJAX按页查询        var xm=$("#xm").val();        var xs=$("#xy").val();        var data="cus.xm="+xm+"&cus.xs="+xs+"&page="+page;        $.ajax({            type: "post",//使用get方法访问后台            dataType: "json",//返回json格式的数据            url: "AccountList.action",//要访问的后台地址            data: data,//要发送的数据            complete :function(){},//AJAX请求完成时隐藏loading提示            success: callbackFun//msg为返回的数据,在这里做数据绑定            });           }           function callbackFun(msg){        $("#totalCount").html(msg.totalCount);        $("#page").html(msg.page);        $("#totalPage").html(msg.totalPage);           var data = msg.list;        var node=document.getElementById("datas");         removeChildrenRecursively(node);         var xy=$("#xy").find("option:selected").text();        $.each(data, function(i, n){            var row=$("<tr id='template' align='center'>"+            "<td id='xmtd'></td>"+            "<td id='xstd'></td>"+            "<td id='dhtd'></td>"+            "<td id='actd'></td>"+            "<td id='mmtd'></td>"+            "<td id='lxtd'></td>"+            "<td id='bjtd'></td>"+              "<td id='sctd'></td>"+            "<td id='operator'></td></tr>"            );            row.find("#xmtd").text(n.xm);            row.find("#xstd").text(xy);            row.find("#dhtd").text(n.dh);            row.find("#actd").text(n.ac);            row.find("#mmtd").text(n.mm);            row.find("#lxtd").text(n.lx);                 row.find("#bjtd").text("编辑");                   row.find("#sctd").html("<a href='../../DelAccount.action?id='"+n.id+">删除</a>");                     row.find("#operator").html("<input type='checkbox' id='"+n.xh+"' value='"+n.xh+"'/>");;            row.attr("id","ready");//改变绑定好数据的行的id            row.appendTo("#datas");//添加到模板的容器中         });       }
[解决办法]
JScript code
function getChildNodeArrayByParentID(categoryCode) {  var result="";            $.ajax(            {                type: "get",                url: "DynamicMenuItemsHandler.ashx",                data: { MenuItemCode: categoryCode },                async: false,                                success: function(data) {                     result = data;                }            });      return result;        }var jsonArray = getChildNodeArrayByParentID(01);
------解决方案--------------------


success: function(data) {
return data;
}

这里是回调函数返回data而不是你定义的函数返回,修改如下:
function getChildNodeArrayByParentID(categoryCode) {
var result;
$.ajax(
{
type: "get",
url: "DynamicMenuItemsHandler.ashx",
data: { MenuItemCode: categoryCode },
async: false,
success: function(data) {
result = data;
}
});
return result;
}

热点排行
Bad Request.