+ -
当前位置:首页 → 问答吧 → ExtJS数据加载的问题

ExtJS数据加载的问题

时间:2011-03-07

来源:互联网

后台部分代码如下:
function DisplayClientInfo(n){
  var cbrecord = new Ext.data.Record.create([{name:'SN', type: 'string'}]);
  // 数据
cbStore = new Ext.data.Store({
// 代理
proxy : new Ext.data.HttpProxy({
url : "Data/BaseInfo/Client/ClientWork.aspx?name=" + n,
method : "POST"
}),
// 解析器
reader : new Ext.data.JsonReader({
fields : ['SN'],
root : 'data',
id : 'SN'
},
cbrecord)
});

// 数据加载时分页
cbStore.load();
alert(cbStore.getCount());
  }

后台部分代码如下:
public partial class ClientWork : System.Web.UI.Page
  {
  public string jsons = string.Empty;
  protected void Page_Load(object sender, EventArgs e)
  {
  string name = Request["name"];
  GetJsonData(name);
  Response.Write(jsons);
  }

  private void GetJsonData(string name)
  {
  IList<EngineerDepInfo.Model.Client> clientList = ClientBLL.Load();

  foreach (EngineerDepInfo.Model.Client ct in clientList)
  {
  if (ct.CM.Name.TrimEnd() 
  == name.TrimEnd())
  {
  string data = JsonHelper.ToJSON(ct.CM);
  jsons = "{data:{'SN':'1001'}}";
  break;
  }
  }
  }
  }

我在后台监视的时候jsons字符串发送了"{data:{'SN':'1001'}}";
但是cbStore.getCount()一直是0,没有数据
不知道为什么?请指教

作者: zhangdapeng_scu   发布时间: 2011-03-07

cbStore.getCount()不能直接写在load后面,必须写在callback回调函数里


JScript code

cbStore.load({    
      callback: function(r, options, success) {
alert(success);
alert(cbStore.getCount());
                    }
})

作者: xiandulina   发布时间: 2011-03-07

热门下载

更多