我Default.aspx生成的json代码是,但是到最后alert弹出老实现0,麻烦帮看下
{root:[{"id":"1","name":"小王"},{"id":"1","name":"小李",}]}
var reader = new Ext.data.JsonReader
({
root: 'root',
totalProperty: 'totalCount'
},
[{name:"id",mapping:"id"},
{name:"name",mapping:"name"},
]); var proxy = new Ext.data.HttpProxy
({
url: 'Default.aspx'
});
var SduserData = new Ext.data.Store
({
proxy : proxy,
reader: reader,
remoteSort: true
});
SduserData.load();
var s = SduserData.getCount();
alert(s);
{root:[{"id":"1","name":"小王"},{"id":"1","name":"小李",}]}
var reader = new Ext.data.JsonReader
({
root: 'root',
totalProperty: 'totalCount'
},
[{name:"id",mapping:"id"},
{name:"name",mapping:"name"},
]); var proxy = new Ext.data.HttpProxy
({
url: 'Default.aspx'
});
var SduserData = new Ext.data.Store
({
proxy : proxy,
reader: reader,
remoteSort: true
});
SduserData.load();
var s = SduserData.getCount();
alert(s);
fn: function(store, records, options){
//store is loaded, now you can work with it's records, etc.
alert(store.getCount());//到load事件里才能取到值
},
scope:this
}});
SduserData.load(); 后面呢? 往楼上两位指点Ext.onReady(function()
{
这里就是提题中的代码
})
jsonData.html:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>json data ajax example</title>
<link rel="stylesheet" type="text/css" href="ext/resources/css/ext-all.css" />
<script type="text/javascript" src="ext/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="ext/ext-all.js"></script>
<link rel="stylesheet" type="text/css" href="grid-examples.css" />
<script>
Ext.onReady(function(){
var reader = new Ext.data.JsonReader
({
root: 'root',
totalProperty: 'totalCount'
},
[
{name:"id"},
{name:"name"},
]);
var proxy = new Ext.data.HttpProxy
({
url: 'json.jsp'
});
var SduserData = new Ext.data.Store
({
proxy : proxy,
reader: reader,
remoteSort: true
});
SduserData.addListener("load", function(store, records, options){
alert('rows of the data loaded: ' + records.length);
for(var i=0; i<records.length; i++){
//获取到的数据records已经是封装好的数据了, 直接用records[i].fieldName就可以读取它。
alert(records[i].data.name);
}
});
SduserData.load();
});
</script>
</head>
<body><h1>json data ajax example</h1>
<p>author: sunxing007</p>
<div id="topic-grid"></div>
<button id="btn">Get Other Value</button>
</body>
</html>json.jsp:<%@ page language="java" contentType="text/html;charset=UTF-8"%>
<%@ page import="java.io.*"%>
<%
String responseString = "{root:[{\"id\":\"1\",\"name\":\"小王\"},{\"id\":\"2\",\"name\":\"小李\"}]}";//
response.getWriter().write(responseString);
System.out.println("responseString: " + responseString);
response.getWriter().flush();
%>
有了他, 没有你解决不了的问题。