Ext常用的知识点(三)--combobox和xml的绑定

直接看代码,所有需要注意的地方都标在代码后面了

 

Ext.onReady(function() {
	var mystore = new Ext.data.Store({
		url:"data/myInfo.xml", //要加载的文件,这要有服务器(如果tomcat)才能加载到数据
		reader:new Ext.data.XmlReader({
			record:"person", //每一条记录的根
			id:"id" //这个id很重要,不可以省略,而且要是唯一的,要不然同id的项之间会相互覆盖
		},["name","email", //如果name和mapping一样的话可以这么简写,否则用下面的写法
		//{name: 'title', mapping: 'record.innerHTML'} 用这个来加载标签里面的内容,如<person>me</person>
		{name: 'title', mapping: 'name @first'} //name @first表示 <name first="……“>……</name>
		])
	});
	
	var loginForm = new Ext.FormPanel({
		title:"登陆",
		width:270,
		renderTo:"test1",
		frame:true,
		labelWidth:70,
		collapsible:true,
		autoHeight:true,
		items:[{
				xtype:"combo",
				id:"myCombo",
				fieldLabel:"个人信息",
				emptyText:"请选择",
				displayField:"title",
				valueField:"email",
				mode:"remote",//设成local,测试了一下,也可以
				triggerAction:"all",
				store:mystore,
				listeners:{
					"select":function(){
						Ext.MessageBox.alert("消息",Ext.get("myCombo").getValue())
					},
					"collapse":function(){//没选 任何选项的时候就出现一个进度条,让用户等5秒
						Ext.MessageBox.show({
							title:"你好",
							msg:"请稍等……",
							width:200,
							progress:true,
							wait:true,
							waitConfig:{
								duration:5000,
								interval:600,
								fn:function(){
									Ext.MessageBox.hide();
								}
							}
						})
					}
				}
			}
		]
	});
	
	mystore.load(); //最后,别忘了这句话来加载数据
	
});

 

xml文档:

 

<?xml version="1.0" encoding="UTF-8"?>
<root>
	<person>
		<id>1</id>
		<name first="ling">person1</name>
		<phone>12345******</phone>
		<email>person1@gmail.com</email>
	</person>
	<person>
		<id>2</id>
		<name first="wang">person2</name>
		<phone>54321******</phone>
		<email>person2@gmail.com</email>
	</person>
</root>
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值