extjs链接mysql_Extjs如何与数据库交互(一) | 学步园

一般需要添加一组数据,引入一个概念Ext.data.Reader,这里的Reader功能非常单一,只是用来

解析数据的到,EXTJS支持不同的数据格式,也就需要不同的数据解析器。而这个Reader就是承担解析器的作用。

1、数组形式数据解析(特殊的JSON形式数据,因此,ArrayReader是JsonReader的子类)

var _store = new Ext.data.Store({

data:[["张三" , "男"] , ["丽丝" , "女"]],

reader:new Ext.data.ArrayReader({

},Ext.data.Record.create(["name" , "sex"]))

}) ;

解析器为ArrayReader,分别解析["张三" , "男"] 和["丽丝" , "女"],将其转换成Ext.data.Record。

2、JSON形式数据

var _store = new Ext.data.Store({

data:[{name:"张三" , sex:"男"} , {name:"丽丝" , sex:"女"}],

reader:new Ext.data.JsonReader({

} , Ext.data.Record.create(["name" , "sex"]))

}) ;

alert(_store.getCount()) ;

JsonReader分别解析{name:"张三" , sex:"男"}和{name:"丽丝" , sex:"女"},将这些数据解析成Ext.data.Record类型数据

3、XML形式数据

这里的有个地方比较麻烦,首先,我们必须得构建一个XMLDocument,这样才能形成XML数据,我们这里所讲的是ASPServer的XML组织形式

var _xml = new

XML("

丽丝<

/name>女

") ;

这样,就是构建一个XML对象,通过_xml.getValue()得到xmldocument原型

再者,我们还有需要引入一个新型概念——数据代理Ext.data.DataProxy,数据代理的作用就是通过一定的方式来获得数据,目前

EXTJS提供三种方式获得数据:内存传入、HTTP传入、跨域传入。我这里所讲是内存传入Ext.data.MemoryProxy

var _store = new Ext.data.Store({

proxy:new Ext.data.MemoryProxy(_xml.getValue()) ,

reader:new Ext.data.XmlReader({

record:"row"

},Ext.data.Record.create(["name" , "sex"]))

}) ;

_store.on("load" , function(_store){

alert(_store.getAt(0).getCount()) ;

}) ;

_store.load() ;

XML文件:

function XML(str){

if(window.DOMParser)//firefox内核的浏览器

{

var p = new DOMParser();

return p.parseFromString( str, "text/xml" );

}

else if( window.ActiveXObject )//ie内核的浏览器

{

var doc = new ActiveXObject( "Msxml2.DOMDocument" );

doc.loadXML(str);

//return doc;

return doc;

}

else

return false;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值