我写了个简单的grid,后台能正常获取数据,但是前台无法获得
后台代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace test
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataClassesDataContext db=new DataClassesDataContext ();
var query = from p in db.newpo select new { p.new_poid, p.new_subject, createdon=p.createdon.ToString()};
string josn = query.ToJSON();
Response.Write(josn);
}
}
}数据在页面上打印出来为:
[{"new_poid":"000dabf7-e3b3-df11-8580-0003ff1da946","new_subject":"有方案活动","createdon":"08 30 2010 3:09AM"},{"new_poid":"109a3a27-d8b4-df11-8580-0003ff1da946","new_subject":"test--ssss","createdon":"08 31 2010 8:17AM"},{"new_poid":"70015047-a6bc-df11-920c-0003ff1da946","new_subject":"test-09-10","createdon":"09 10 2010 6:40AM"}]
前台代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>test</title>
<!-- <meta http-equiv="Content-Type" content="text/html; charset="UTF-8" />-->
<link href="Css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Script/ext-base.js" type="text/javascript"></script>
<script src="Script/ext-all.js" type="text/javascript"></script>
<script type="text/javascript">
Ext.onReady(function() {
var ds= new Ext.data.JsonStore({
url:'Default.aspx',
autoLoad:true,
fields: [
{ name: 'new_poid' },
{ name: 'new_subject' },
{ name: 'createdon' }
]
});
var grid = new Ext.grid.GridPanel({
loadMask: { msg: '正在加载数据,请稍侯……' },
renderTo: 'grid',
height: 250,
store:ds,
width: 350,
colModel: new Ext.grid.ColumnModel([
{ header: '编号', dataIndex: 'new_poid' },
{ header: '名称', dataIndex: 'new_subject' },
{ header: '日期', dataIndex: 'createdon' }
])
});
})
</script>
</head>
<body>
<div id="grid"></div>
</body>
</html>
运行后显示不出数据,也不报错,我把后台的数据直接在前台赋值是可以显示的,说明后台数据格式没错,但是就是不能正常获取,请求帮助
后台代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace test
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
DataClassesDataContext db=new DataClassesDataContext ();
var query = from p in db.newpo select new { p.new_poid, p.new_subject, createdon=p.createdon.ToString()};
string josn = query.ToJSON();
Response.Write(josn);
}
}
}数据在页面上打印出来为:
[{"new_poid":"000dabf7-e3b3-df11-8580-0003ff1da946","new_subject":"有方案活动","createdon":"08 30 2010 3:09AM"},{"new_poid":"109a3a27-d8b4-df11-8580-0003ff1da946","new_subject":"test--ssss","createdon":"08 31 2010 8:17AM"},{"new_poid":"70015047-a6bc-df11-920c-0003ff1da946","new_subject":"test-09-10","createdon":"09 10 2010 6:40AM"}]
前台代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>test</title>
<!-- <meta http-equiv="Content-Type" content="text/html; charset="UTF-8" />-->
<link href="Css/ext-all.css" rel="stylesheet" type="text/css" />
<script src="Script/ext-base.js" type="text/javascript"></script>
<script src="Script/ext-all.js" type="text/javascript"></script>
<script type="text/javascript">
Ext.onReady(function() {
var ds= new Ext.data.JsonStore({
url:'Default.aspx',
autoLoad:true,
fields: [
{ name: 'new_poid' },
{ name: 'new_subject' },
{ name: 'createdon' }
]
});
var grid = new Ext.grid.GridPanel({
loadMask: { msg: '正在加载数据,请稍侯……' },
renderTo: 'grid',
height: 250,
store:ds,
width: 350,
colModel: new Ext.grid.ColumnModel([
{ header: '编号', dataIndex: 'new_poid' },
{ header: '名称', dataIndex: 'new_subject' },
{ header: '日期', dataIndex: 'createdon' }
])
});
})
</script>
</head>
<body>
<div id="grid"></div>
</body>
</html>
运行后显示不出数据,也不报错,我把后台的数据直接在前台赋值是可以显示的,说明后台数据格式没错,但是就是不能正常获取,请求帮助
观察下后台ajax是否运行了
ajax运行了的话 返回的数据正确吗不行就强制调用 ds.load();
不是没人用。而是用的相对少,EXT,DOJO高手都要忙项目,哪有时间帮你回帖呢?对吧!
后台如何看ajax是否运行呢?
var ds= new Ext.data.JsonStore({
url:'Default.aspx',
autoLoad:true,
fields: [
{ name: 'new_poid' },
{ name: 'new_subject' },
{ name: 'createdon' }
]
});怎么没有看见root,totalProperty 这些属性呢老伙计我在弄这个,对EXTJS是十分的热爱,能在站内留下你的QQ么,一起学吧,这是我在cnblogs上的blog
www.cnblogs.com/yql1986
没有root,totalProperty 也行的啊
先用固定的数据试试,脚本没问题。
{ name: 'new_poid' },没有mappingfields: [
{ name: 'new_poid',mapping:'new_poid' },