#php #yii
#php #yii
Вопрос:
У меня есть сетка, которая обновляется каждые 3 секунды. Все работает нормально, но проблема в том, что загрузчик (показывает…загрузка) продолжает появляться каждый раз, когда обновляется сетка.
Это то, что я пробовал:
echo DynaGrid::widget([
'columns' => $columns,
'showPersonalize' => true,
'options' => ['id' => 'trackyard'],
'gridOptions' => [
'options' => ['id' => 'assignsolicitation-inside'],
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'showPageSummary' => false,
'pager' => [
'firstPageLabel' => 'First',
'lastPageLabel' => 'Last',
'maxButtonCount' => 10,
],
'toolbar' => [
['content' => '{dynagrid}'],
'{export}',
'{toggleData}'
],
'pjax' => true,
'pjaxSettings' => [
'options' => [
'id' => 'wod'
],],
'bordered' => false,
'striped' => true,
'condensed' => true,
'responsive' => true,
'responsiveWrap' => false,
'containerOptions' => ['style' => 'overflow:scroll'],
]
]);
?>
Затем после сетки у меня есть:
<?php
$script = <<< JS
function reloadgrid() {
var intervalID = setInterval(function() {
$.pjax.reload({container:'#trackyard-pjax'});
}, 3000);
setTimeout(function() {
clearInterval(intervalID);
}, 18000);
};
reloadgrid();
JS;
$this->registerJS($script, yiiwebVIEW::POS_HEAD);
?>
Как я могу скрыть загрузчик?
Ответ №1:
Я обнаружил, что мне нужно установить loadingCssClass в значение false
То есть
echo DynaGrid::widget([
'columns' => $columns,
'showPersonalize' => true,
'options' => ['id' => 'trackyard'],
'gridOptions' => [
'options' => ['id' => 'assignsolicitation-inside'],
....
'pjax' => true,
'pjaxSettings' => [
'options' => [
'id' => 'wod'
],
'loadingCssClass'=>false, //this disables the loading thing
],
.........
]
]);
?>
Ответ №2:
Используйте это в своем виджете
'afterAjaxUpdate' => 'function(id) { $('.loader').hide(); }'
Надеюсь, это вам поможет.
Комментарии:
1. не отключает его
Ответ №3:
для exmp этот загрузчик div si
<div class="loader"></div>
после обновления записи вы скрываете div загрузчика
function(data) {
$('.loader').hide();
}
Комментарии:
1. Мне нужно отключить загрузчик kartik grid, а не пользовательский загрузчик