JSON解析在ExtJS的4
问题描述:
我新的ExtJS的4,我现在用JSON来填充组合框,如下,JSON解析在ExtJS的4
JSON:
{
"Patient": [
{
"id": 1,
"emergencyPhone": "1234567890",
"primaryInsuranceId": {
"id": 1
},
"secondaryInsuranceId": {
"id": 2
},
"personalInfo": {
"id": 2,
"firstName": "James",
"lastName": "Anderson",
"address": {
"state": {
"id": "2",
"stateName": "Alaska",
"code": "AK"
},
"zipcode": 12345,
"country": "USA",
"telephone": "1234567890",
"alternatePhone": "1234567890",
"faxNumber": "1234567890",
"email": "[email protected]"
},
"gender": "Male",
"dob": "2012-04-02",
"ssn": 123456789,
"race": "race"
},
"clearinghouseId": {
"id": 2,
"name": "ALPHA Clearing House"
},
"provider": []
}
]
}
代码:
Ext.define('patientList', {
extend: 'Ext.data.Model',
fields: ['id', 'personalInfo']
});
var patient = Ext.create('Ext.data.Store', {
model: 'patientList',
autoLoad: true,
proxy: {
type: 'ajax',
url: url + '/lochweb/loch/patient/getAll',
reader: {
type: 'json',
root: 'Patient'
}
}
});
组合框
{
xtype: 'combo',
fieldLabel: 'Patient',
name: "patientId",
id: "patientId",
queryMode: 'local',
store: patient,
displayField: 'personalInfo.firstName',
valueField: 'id',
emptyText: "Select",
editable: false,
allowBlank: false
}
当我点击组合框,它显示了名字,但选择的是后,它不是在下降显示down.Any帮助
感谢
答
更改模式这样的:
Ext.define('patientList', {
extend: 'Ext.data.Model',
fields: [
{ name: 'myId', mapping: 'personalInfo.id' },
{ name: 'myFirstName', mapping: 'personalInfo.firstName' }
]
});
然后改变你的组合这样的:
{
xtype: 'combo',
fieldLabel: 'Patient',
name: "patientId",
id: "patientId",
queryMode: 'local',
store: patient,
displayField: 'myFirstName', // Change This
valueField: 'myId', // Change This
emptyText: "Select",
editable: false,
allowBlank: false
}
+0
感谢娜塔莎,它的工作原理 – user1321824 2012-04-30 03:43:48
+0
欢迎您。 – Natasha 2012-04-30 16:42:39
您的Json对于Combo数据格式不正确。除此之外,我没有在你的Json中找到任何'患者'根。检查这个例子:http://docs.sencha.com/ext-js/4-0/#!/api/Ext.form.field.ComboBox – Natasha 2012-04-27 11:01:36
感谢评论,我已经编辑了这个问题,如果json是清楚的.any帮助abot hw在组合框中填充Json – user1321824 2012-04-27 12:06:16
嗨娜塔莎,任何帮助填充组合框 – user1321824 2012-04-27 12:30:22