我的 XML 有问题吗?
我正在使用 extjs 解析 xml,但它仅返回五个组件之一。
仅五个组件中的第一个。
Ext.regModel('Card', {
fields: ['investor']
});
var store = new Ext.data.Store({
model: 'Card',
proxy: {
type: 'ajax',
url: 'xmlformat.xml',
reader: {
type: 'xml',
record: 'investors'
}
},
listeners: {
single: true,
datachanged: function(){
Ext.getBody().unmask();
var items = [];
store.each(function(rec){
alert(rec.get('investor'));
});
我的 xml 文件是:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<investors>
<investor>Active</investor>
<investor>Aggressive</investor>
<investor>Conservative</investor>
<investor>Day Trader</investor>
<investor>Very Active</investor>
</investors>
<events>
<event>3 Month Expiry</event>
<event>LEAPS</event>
<event>Monthlies</event>
<event>Monthly Expiries</event>
<event>Weeklies</event>
</events>
<prices>
<price>$0.5</price>
<price>$0.05</price>
<price>$1</price>
<price>$22</price>
<price>$100.34</price>
</prices>
</root>
当我运行代码时,只出现“Active”。 。 。 。
我知道我做错了什么,但我不确定是什么......
请帮助。 。 。 。 。
i'm parsing an xml with my extjs but it returns only one of the five components.
only the first one of the five components.
Ext.regModel('Card', {
fields: ['investor']
});
var store = new Ext.data.Store({
model: 'Card',
proxy: {
type: 'ajax',
url: 'xmlformat.xml',
reader: {
type: 'xml',
record: 'investors'
}
},
listeners: {
single: true,
datachanged: function(){
Ext.getBody().unmask();
var items = [];
store.each(function(rec){
alert(rec.get('investor'));
});
and my xml file is:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<investors>
<investor>Active</investor>
<investor>Aggressive</investor>
<investor>Conservative</investor>
<investor>Day Trader</investor>
<investor>Very Active</investor>
</investors>
<events>
<event>3 Month Expiry</event>
<event>LEAPS</event>
<event>Monthlies</event>
<event>Monthly Expiries</event>
<event>Weeklies</event>
</events>
<prices>
<price>$0.5</price>
<price>$0.05</price>
<price>$1</price>
<price>$22</price>
<price>$100.34</price>
</prices>
</root>
wen i run the code only "Active" comes out. . . .
i know that i'm doing something wrong but i'm not sure what....
please help . . . . .
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
一切都很好,除了我的 xml 格式应该是这样的:
积极的
3 个月到期
0.5 美元
挑衅的
飞跃
0.05 美元
保守的
月刊
1 美元
日间交易者
每月到期
22 美元
非常活跃
周刊
100.34 美元
Every thing was fine execpt that my xml format should be like this:
Active
3 Month Expiry
$0.5
Aggressive
LEAPS
$0.05
Conservative
Monthlies
$1
Day Trader
Monthly Expiries
$22
Very Active
Weeklies
$100.34
您需要访问 sencha.com 教程,了解如何在网格中使用 XML。
XML 网格示例
您不应该了解如何正确地构建 XML 以便数据存储可以使用它。
You need to visit the sencha.com tutorial on how to use XML with a grid.
XML Grid Sample
You should take not of how to properly structure your XML so that it can be consumed by a data store.
Ext XML 网格需要配置为查找重复元素以映射到商店/网格中的每个记录。您已将其配置为
investors
,其中只有 1 个。然后您为investor
映射了一个字段,它只是抓取在“列”中遇到的第一个字段该“行”的”。网格中“行”的重复元素应该是
investor
,而不是investors
。更改:
记录:“投资者”
至:
记录:'投资者'
The Ext XML grid needs to be configured to look for the repeating elements to map to each record in your store/grid. You had it configured for
investors
, of which there is only 1. Then you mapped a field forinvestor
and it is just grabbing the first one that it encounters for the "column" of that "row".The repeating element for your "rows" in the grid should be
investor
, notinvestors
.Change:
record: 'investors'
to:
record: 'investor'