如何获取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;

  }