我在extjs應用程序中使用了組合框組件。我想通過json加載列表。但是當我點擊組合框時,列表不顯示。請幫助我。Ajax數據無法在組合框中加載
以下是Ajax調用:
Ext.Ajax.request({
url: 'data/vgroup.json',
method: 'Get',
timeout: 9000,
success: function(response, opts) {
var device = Ext.decode(response.responseText);
var device_records = new Array();
for(var itr=0; itr < device.vgroup.length; itr++) {
var record = new Array();
record[0] = device.vgroup[itr].name;
//alert(device.vgroup[itr].name);
device_records[itr] = record;
}
vgfrmextension_device = new Ext.data.ArrayStore({
fields: ['name'],
data : device_records
});
},
failure: function(response, opts) {
Ext.MessageBox.alert('Failure', "Link not found");
}
});
以下是部分:
{
xtype:'combobox',
fieldLabel: 'Team name* ',
editable:false,
/*allowBlank: false,*/
store: vgfrmextension_device,
valueField:'name',
displayField:'name',
name: 'txtMode',
id:'txtModeId',
queryMode: 'local',
triggerAction: 'all',
emptyText:'Select Mode',
listeners: {
}
},
這裏是JSON:
{
vgroup: [
{
'id': 'team1',
'name': '100G',
'size': '5646546546',
'available': '545644541',
'player': 'avi',
'status': 'Good'
},
謝謝,但我使用json來調用列表項,而不是php。如果你可以在MVC結構中提供詳細的答案,這將是非常好的。我使用Extjs4 – Hemant 2012-07-24 05:39:35
我想你只需要改變代理連接。將代理網址更改爲「data/vgroup.json」,並將根目錄更改爲「vgroup」。 – Derek 2012-07-24 13:00:35
@Hemant PHP不是一種數據交換格式,而是一種服務器端編程語言,除了其他語言之外,它還可以生成JSON(http://php.net/manual/en/function.json-encode.php)。無論您是從JSON文件還是從PHP生成的「JSON文件」加載數據都無關緊要。 – Alexander 2016-06-17 07:28:04