[英]Sencha Touch: Get datastore json data into selectfield
我一直在艰难地尝试让我的selectfield显示我的模板数据。
我的TemplateStore如下所示:
Ext.regModel('tempItems', {
fields: [
{ name: 'Name', type: 'string' }
]
});
Ext.regStore('TempStore', {
model: 'tempItems',
autoLoad: true,
proxy: {
type: 'ajax',
url: 'http://localhost:56132/Service.asmx/GetTemplateModels',
reader: {
type: 'json',
root: 'd'
}
}
});
选择字段代码:
xtype: 'selectfield',
name: 'template',
style: 'background-color: inherit; margin-left: 8px',
store: 'TempStore',
displayField: 'Name',
valueField: 'Name'
JSON返回数据:
"{"d":[{"__type":"SenchaTouchProblem.TemplateModel","Name":"Test 1","id":1},{"__type":"SenchaTouchProblem.TemplateModel","Name":"Test 2","id":2},{"__type":"SenchaTouchProblem.TemplateModel","Name":"Test 3","id":3},{"__type":"SenchaTouchProblem.TemplateModel","Name":"Test 4","id":4},{"__type":"SenchaTouchProblem.TemplateModel","Name":"Test 5","id":5}]}"
任何帮助或指示将是惊人的!
我正在上载一个示例项目,以显示我的问题: http : //www.vbninja.com/SenchaTouchProblem.zip
谢谢瑞安
更新:
检查代码后,您有几处错误。 首先,您没有使用json,而是使用了xml,因此您的阅读器不正确,然后在autoload config选项中输入了错字,它应该是autoLoad(请注意大写的L,这很难被检测到:)),无论如何尝试这个:
App.stores.tempStore = new Ext.data.Store({
model: 'tempItems',
proxy: {
type: 'ajax',
url: '/Service.asmx/GetTemplateModels',
reader: {
type: 'xml',
record: 'TemplateModel'
},
actionMethods: {
create: 'POST',
read: 'POST',
update: 'PUT',
destroy: 'DELETE'
}
},
autoLoad: true
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.