Simple things should be simple. Простые вещи должны быть простыми. While starting with ExtJS, I saw a screencast on Grid which used a rather dubious method of making an AJAX call using an actual form element. Хотя, начиная с ExtJS, я увидел screencast по сетке, которые используются довольно сомнительных методов внесения AJAX вызова с использованием фактических форму элемента. I hunted for a better option and I came across a better option - Ext.data.Connection. Я охотились за лучший вариант, и я пришел на лучший вариант - Ext.data.Connection. Here’s an working example on how you can easily make AJAX call in ExtJS library. Вот пример о том, каким образом вы можете просто внести AJAX призыв в ExtJS библиотеки.

 var conn = new Ext.data.Connection(); conn.request({     url: 'history.jsp',     method: 'POST',     params: {"metaID": metaID, columnName: field},     success: function(responseObject) {         showHistoryDialog(responseObject.responseText);     },      failure: function() {          Ext.Msg.alert('Status', 'Unable to show history at this time. Please try again later.');      } }); var Соед = новый Ext.data.Connection (); conn.request ((Адрес сайта: "history.jsp ', метод:" POST ", параметры: (" metaID ": metaID, columnName: полевые), успех: функция (responseObject ) (ShowHistoryDialog (responseObject.responseText);), провал: функция () (Ext.Msg.alert ( "Статус", "Не удается показать историю в данный момент. Пожалуйста, повторите попытку позже. ');))); 

Obviously you will have to implement the showHistoryDialog() method to your taste. Очевидно, вам придется выполнить showHistoryDialog () метод на Ваш вкус. Change the method names and url to suit your requirements. Изменение имен и метод ссылке на костюм ваши требования.

The downside is that it doesn’t display a loading message which you can easily implement. Негативные в том, что она не отображает погрузки послание, которое вы можете легко осуществить.

Update: Обновление:
Here is the full code showing a Loading dialog too: Вот полный код с указанием загрузка диалога слишком:

 var conn = new Ext.data.Connection();      // History buton click handler. var Соед = новый Ext.data.Connection () / / История бутон нажмите обработчик. It submits the request and displays the response using history dialog     function showHistory() {         if(record != null && field != null) {             metaID = record.get("MetaID");             grid.getGridEl().mask('Loading history...');             conn.request({                 url: 'history.jsp',                 method: 'POST',                 params: {"metaID": metaID, columnName: field},                 success: function(responseObject) {                     showHistoryDialog(responseObject.responseText);                     grid.getGridEl().unmask(true);                 },                 failure: function() {                     grid.getGridEl().unmask(true);                     Ext.Msg.alert('Status', 'Unable to show history at this time. Please try again later.');                 }             });         }     } Она представляет запрос и выводит ответ, используя функцию истории диалоговое showHistory () (если (рекорд! = Недействительными и и поле! Недействительными =) (metaID = record.get ( "MetaID"); grid.getGridEl (). Маски ( "Загрузка История ...'); conn.request ((Адрес сайта: "history.jsp ', метод:" POST ", параметры: (" metaID ": metaID, columnName: полевые), успех: функция (responseObject) (showHistoryDialog (responseObject . responseText); grid.getGridEl (). размаскировать (истинного);), провал: функция () (grid.getGridEl (). размаскировать (истинного); Ext.Msg.alert ( "Статус", "Не удается показать историю на этот раз. Пожалуйста, повторите попытку позже. ');)));)) 

Note: The code is used in a production environment to display historical information. Примечание: Этот код используется в производственной среды, для показа исторической информации. The server side code as well as the implementation of of showHistoryDialog() is not provided as it is irrelevant to the context. Серверной стороне код, а также осуществление в showHistoryDialog () не представлена, как она не имеет отношения к контексту.

With libraries like ExtJS and services like GMail, browser is now truly the king. В библиотеках, как ExtJS и услуг, таких как GMail, браузер в настоящее время действительно царя. You don’t need desktop applications for most purposes. Вам не нужно настольных приложений для большинства целей.