Extjs使用grid,数据库数据不显示
各位,帮个忙。初学EXTJS,想要将从数据库获得的数据加载到页面,结果grid控件正常显示,但是没有绑定数据。调试Action,显示正常执行,roadlist已经正常赋值。
注:代码一,temp.js文件
Ext.onReady(function(){
var gridlist = Ext.create('Ext.grid.Panel',{
renderTo : "gridtemp",
title:'道路列表',
width:270,
height:480,
frame : true,
layout: 'fit',
store : {
fields : [
{name : 'roadid', type : 'Integer'},
{name : 'road_name', type : 'String'}
],
proxy : {
type : 'ajax',
url : 'jsonroadinfo.action',
reader : {
type : 'json',
root : 'roadlist'
}
},
autoLoad : true
},
columns : [{
text : '道路名称',
width : 150,
sortable : false,
dataIndex : 'road_name'
},{
text : '道路编号',
width : 110,
sortable : false,
dataIndex : 'roadid'
}]
});
});
代码二,struts.xml
<package name = "jsoninfo" extends = "json-default">
<action name="jsonroadinfo" method = "getRoadwayInfo" class = "jsonroadinfo">
<result type = "json">
<param name="excludeProperties">basicinfoservice</param>
</result>
</action>
</package>
代码三,about.jsp
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
<link rel="stylesheet" type="text/css" href="../extjs/resources/css/ext-all.css"/>
<script type="text/javascript" src="../extjs/ext-all.js"></script>
<script type="text/javascript" src="../extjs/local/ext-lang-zh_CN.js"></script>
<script type="text/javascript" src="../jsWithExt/temp.js"></script>
</head>
<body>
<div id = "gridtemp"></div>
</body>
</html>
运行结果:
------解决方案--------------------
当然是数据格式错误了....
ext grid需要的数据源是一个json数组,其格式得看你对store对象的配置,
就你现在的配置,后台字符串格式应该为:
"[['道路编号1','道路名称1'],['道路编号2','道路名称2']]"
这种,自己看看是不是吧