UNPKG

extjs-gpl

Version:

GPL licensed version of Sencha Ext JS

72 lines (64 loc) 2.13 kB
/** * Demonstrates loading data over AJAX. */ Ext.define('KitchenSink.view.data.Ajax', { extend: 'Ext.Container', scrollable: true, cls: 'demo-solid-background', shadow: true, formatJson: false, items: [ { xtype: 'panel', id: 'Ajax', styleHtmlContent: true }, { docked: 'top', xtype: 'toolbar', items: [ { text: 'Load using Ajax', handler: function() { var panel = Ext.getCmp('Ajax'), container = panel.up('container'); panel.getParent().setMasked({ xtype: 'loadmask', message: 'Loading...' }); Ext.Ajax.request({ url: 'data/test.json', success: function(response) { container.renderJson(response.responseText); //panel.setHtml('<pre>' + response.responseText + '</pre>'); panel.getParent().unmask(); } }); } }, { text: 'Format JSON', enableToggle: true, handler: function(button) { var panel = Ext.getCmp('Ajax'), container = panel.up('container'); container.formatJson = button.isPressed(); container.renderJson(); } } ] } ], renderJson: function(json) { var panel = Ext.getCmp('Ajax'), container = panel.up('container'); json = json || container.json; container.json = json; if (container.formatJson) { panel.setHtml('<pre>' + json + '</pre>'); } else { panel.setHtml(json); } } });