Material Design Lite. Динамическое создание элементов

Для того чтобы сформировать динамически подгруженные/созданные html элементы библиотеки MDL следует использовать следующую команду:

if ( ! ( typeof ( componentHandler ) == undefined ) ) {

    componentHandler.upgradeAllRegistered();

}

Скрипт проверяет есть ли компонент "componentHandler" javascript бибилиотеки Material Design Lite и формирует элементы MDL которые вы используете на html странице.

 

Пример применения с Yii framework виджетом CListView:

$widget = $this->widget('zii.widgets.CListView', array(
        'id' => 'items-list',
        'dataProvider' => $dataProvider,
        'ajaxUpdate' => true,
        'afterAjaxUpdate' => 'MDL_upgradeAllRegistered',
        'itemView' => '_my_team_list',
        'itemsTagName' => 'table',
        'emptyText' => 'Пусто'
));

После того, как выполнится запрос ajax, будет выполнено функция "MDL_upgradeAllRegistered" в которой должны быть строки, что я написал выше. И ваша диначимеская веб страница будет отображаться корректно.

Да, не забудьте перед этим загрузить файл в котором должно быть определение функции MDL_upgradeAllRegistered:

Yii::app()->clientScript->registerScriptFile ( Yii::app()->request->baseUrl . "/js/my_MDL.functions.js" );

 

 


Tags: Material Design Lite Yii PHP
2016-12-08

И еще полезные примеры JavaScript

Удалить елементы на странице по имени класса

Почему рассылки попадают в спам

up