Почему мой dojox.grid.DataGrid не отображает загрузочное сообщение?

#datagrid #dojo

#datagrid #dojo

Вопрос:

В моей datagrid не отображается сообщение о загрузке типа «загрузка …», Кто-нибудь знает, как это подтвердить?


код моей datagrid приведен ниже. Я установил загрузочное сообщение как «ААААААААААААААААААААААААААААА», но оно не отображается при загрузке страницы.

 <div>
    <table dojoType="dojox.grid.DataGrid"  query="{sort_value:'*'}" loadingMessage="AAAAAAAAAAAAAAAAAAAAAAAAAAA" id="myDataGrid" structure="myDataGridStructure" style="width:100%; height:450px;" noDataMessage="No agent information. Please create.">
          <thead>
                <tr>
                    <th field="sort_value">Agent ID</th>
                    <th field="value" class="hidden">Agent ID</th>
                    <th field="name">Agent Name</th>
                    <th field="descr">Description</th>
                </tr>
          </thead>
    </table>
</div>
  


Я установил хранилище с помощью метода, как показано ниже.
Я использовал метод setStore для передачи данных в сетку.

 function loadGrid(){
selectItmeMsg = "";
dojo.byId("agentFilter_selected").value="";
var xhrArgs = {

        url: "agents.json",
        handleAs: "json",
        load: function(data){
            if(data.error_message == null){
                var bStore = new dojo.data.ItemFileReadStore(
                        {clearOnClose:true, 
                         data: {items: data.agents}}
                        );
                agentStore_selected = bStore;
                var x = dijit.byId("myDataGrid");
                bStore.fetch( {
                    query :{},
                    onComplete : function(items, request){
                        if (x.selection != null){
                            x.selection.clear();
                        }
                        x.setStore(bStore);

                        if(items.length == 0){
                            dijit.byId("editBtn").setAttribute('disabled', true); 
                            dijit.byId("delBtn").setAttribute('disabled', true); 
                            dijit.byId("agentFilter_selected").setAttribute('disabled', true); 
                        }else{
                            dijit.byId("editBtn").setAttribute('disabled', false); 
                            dijit.byId("delBtn").setAttribute('disabled', false); 
                            dijit.byId("agentFilter_selected").setAttribute('disabled', false); 
                        }
                    }
                })
                dojo.byId("errorDis").innerHTML = "";
                dojo.byId("agentFilter_selected").value = "";
            }else{
                dojo.byId("errorDis").innerHTML = data.error_message;
                dijit.byId("editBtn").setAttribute('disabled', true); 
                dijit.byId("delBtn").setAttribute('disabled', true); 
                dijit.byId("newBtn").setAttribute('disabled', true); 
                dijit.byId("agentFilter_selected").setAttribute('disabled', true); 
            }

            if(data.jdbcTemplateNull!=null){
                dojo.byId("errorDis").innerHTML = "Primary CMS is down.";
                dijit.byId("editBtn").setAttribute('disabled', true); 
                dijit.byId("delBtn").setAttribute('disabled', true); 
                dijit.byId("newBtn").setAttribute('disabled', true); 
            }
        }
}
dojo.xhrGet(xhrArgs);
  

}


Комментарии:

1. Сколько времени требуется для загрузки ваших данных? Может быть, он загружается слишком быстро, чтобы сообщение отображалось? Попробуйте установить setTimeout в вашей функции загрузки, чтобы она работала дольше, если это так… просто для тестирования, конечно…

2. Что оно отображает вместо этого? Я понимаю, что сообщение о загрузке и сообщение об ошибке поддерживают i18n, поэтому они не могут быть простым переопределением свойства.

3. У меня есть много данных для отображения, поэтому я думаю, что есть достаточно времени, чтобы отобразить сообщение о загрузке.