Вопрос касается исключительно при работе на yii2 фреймворке.
Максимально кратко излагаю кодом. Это код представления.
\yii\widgets\Pjax::begin(['id' => 'pjax-container']);
if(Yii::$app->request->isPjax) {
echo \yii\jui\DatePicker::widget([
'name' => 'date',
'value' => '',
]);
} else {
echo \yii\helpers\Html::button('Load Pjax', ['onclick' => "$.pjax.reload({container:'#pjax-container'});"]);
}
\yii\widgets\Pjax::end();
Суть в том что при загрузке страницы css jquery-ui не загрузится потому что не проходит условие Yii::$app->request->isPjax.
Потому в хедере страницы не будет соответствующих стилей. Далее когда я делаю перезагрузку через pjax условие проходит. И стили должны загрузится. Но подключаются только js файлы и js код.
Причем если я делаю без использования pjax и в контроллере вызываю renderAjax. То в этом случае все работает нормально.
Еще более простой пример
\yii\widgets\Pjax::begin(['id' => 'pjax-container']);
if(Yii::$app->request->isPjax) {
$this->registerCssFile('http://test.css'); // не регистрируется...
$this->registerJsFile('http://test.js'); // регистрируется
}
echo \yii\helpers\Html::button('Load Pjax', ['onclick' => "$.pjax.reload({container:'#pjax-container'});"]);
\yii\widgets\Pjax::end();