2017-02-11 46 views
0

我尝试添加加载指示器。在视图中添加页面加载指示器yii2

 $this->registerJsFile('js/loading_indicator.js', [ 
     'depends' => ['yii\web\JqueryAsset'] 
    ]); 
    $this->registerJsFile('js/loading_indicator.js'); 
<img src="http://dkclasses.com/images/loading.gif" id="loading-indicator" style="display:none" /> 

在CSS中这

`#loading-indicator { 
    position: absolute; 
    left: 10px; 
    top: 10px; 
}` 

在JS这个

$(document).ajaxSend(function(event, request, settings) { 
    $('#loading-indicator').show(); 
}); 

$(document).ajaxComplete(function(event, request, settings) { 
    $('#loading-indicator').hide(); 
}); 

但是,当页面加载不存在的指标。当我在页面上总是删除这个style="display:none指示器。

+0

请在ajaxSend中打印警报消息。然后检查它的工作与否 –

+0

@HirenBhut我加这个$(document).ajaxSend(function(event,request,settings){alert('alert'); $('#loading-indicator')。show ); })它不工作。 – stand

回答

0

尝试把js文件在你的HTML页面的头部分:

$this->registerJsFile('js/loading_indicator.js', [ 
    'depends' => ['yii\web\JqueryAsset'], 
    'position' => View::POS_HEAD, 
]); 

删除以registerJsFile第二个呼叫。