EXT--本地数据源的组合框示例 Ext.data.Store

<!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> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>本地数据源的组合示例</title> 
<link rel="stylesheet" href="ext-4.2.1/resources/css/ext-all.css" /> 
<script type="text/javascript" src="ext-4.2.1/bootstrap.js"></script>  
<script type="text/javascript" src="ext-4.2.1/locale/ext-lang-zh_CN.js"></script> 
<script type="text/javascript"> 
Ext.onReady(function(){ 
//创建数据模型 
Ext.regModel('PostInfo',{ 
fields:[{name:'province'},{name:'post'}] 
}); 
//定义组合框中显示的数据源 
var postStore=Ext.create('Ext.data.Store',{ 
model:'PostInfo', 
data:[ 
{province:'北京',post:'100000'}, 
{province:'通县',post:'101100'}, 
{province:'昌平',post:'102200'}, 
{province:'大兴',post:'102600'}, 
{province:'密云',post:'101500'}, 
{province:'延庆',post:'102100'} 
] 
}); 
//创建表单 
Ext.create('Ext.form.Panel',{ 
title:'combBox本地数据源', 
renderTo:Ext.getBody(), 
bodyPadding:5, 
frame:true, 
height:150, 
width:370, 
defaults:{ 
labelSeparator:':', 
labelwidth:70, 
width:200, 
labelAlign:'left' 
}, 
items:[{ 
xtype:'combo', 
listConfig:{  emptyText:'未找到匹配值', maxHeight:60 
       }, //设置下拉列表的最大高度为60像素 
name:'post', 
fieldLabel:'邮政编码', 
triggerAction:'all',//单击触发按钮显示全部数据 
store:postStore,//设置数据源 
displayField:'province',//定义要显示的字段 
valueField:'post', //定义值字段 
queryMode:'local', //本地模式 
forceSelection:true,//要求输入值必须在列表中存在 
typeAhead:true, //允许自动选择匹配的剩余部分文本 
value:'102600' //默认选择大兴的邮编 
}] 
}); 
}); 
</script> 
</head> 

<body> 
</body> 
</html> 

 

开发者博客www.developsearch.com

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ext.data.Store 类是 ExtJS 中用于管理数据的核心类之一,它提供了从后台获取数据、本地缓存数据、数据筛选和排序等功能。下面介绍一下 Ext.data.Store 从后台获取数据的几种方式。 1. Ajax 请求方式 可以通过在 Store 的 proxy 配置中设置 type 为 ajax,然后配置 url、method、params 等参数来发送 Ajax 请求,从后台获取数据。示例代码如下: ``` Ext.create('Ext.data.Store', { proxy: { type: 'ajax', url: 'your_url', method: 'GET', params: { // 请求参数 }, reader: { type: 'json', rootProperty: 'data' } }, autoLoad: true, fields: [ // 字段定义 ] }); ``` 2. JsonP 请求方式 可以通过在 Store 的 proxy 配置中设置 type 为 jsonp,然后配置 url、callbackKey 等参数来发送 JsonP 请求,从后台获取数据。示例代码如下: ``` Ext.create('Ext.data.Store', { proxy: { type: 'jsonp', url: 'your_url', callbackKey: 'callback', reader: { type: 'json', rootProperty: 'data' } }, autoLoad: true, fields: [ // 字段定义 ] }); ``` 3. Restful 请求方式 可以通过在 Store 的 proxy 配置中设置 type 为 rest,然后配置 url、reader、writer 等参数来发送 Restful 请求,从后台获取数据。示例代码如下: ``` Ext.create('Ext.data.Store', { proxy: { type: 'rest', url: 'your_url', reader: { type: 'json', rootProperty: 'data' }, writer: { type: 'json' } }, autoLoad: true, fields: [ // 字段定义 ] }); ``` 4. WebSocket 请求方式 可以通过在 Store 的 proxy 配置中设置 type 为 websocket,然后配置 url、reader、writer 等参数来发送 WebSocket 请求,从后台获取数据。示例代码如下: ``` Ext.create('Ext.data.Store', { proxy: { type: 'websocket', url: 'your_url', reader: { type: 'json', rootProperty: 'data' }, writer: { type: 'json' } }, autoLoad: true, fields: [ // 字段定义 ] }); ``` 需要注意的是,以上不同类型的请求方式需要根据后台接口的实际情况进行选择和配置。同时,在 Store 的 fields 配置中也需要定义从后台获取的数据字段。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值