CJuiSortable
| Пакет | zii.widgets.jui |
|---|---|
| Наследование | class CJuiSortable » CJuiWidget » CWidget » CBaseController » CComponent |
| С версии | 1.1 |
| Исходный код | framework/zii/widgets/jui/CJuiSortable.php |
CJuiSortable позволяет сделать выбранные элементы сортируемыми перетаскиванием мышью.
CJuiSortable инкапсулирует плагин JUI Sortable.
Для использования этого виджета, вы можете вставить следующий код в представление:
Настроив свойство options, вы можете указать опции, которые необходимо передать плагину JUI Sortable. Обратитесь к документации JUI Sortable API для возможных опций (имя-значение) и к странице JUI Sortable для общего описания и демо.
Если вы используете выражения JavaScript в коде, пожалуйста, оберните их с помощью CJavaScriptExpression, и Yii будет использовать их как код.
CJuiSortable инкапсулирует плагин JUI Sortable.
Для использования этого виджета, вы можете вставить следующий код в представление:
$this->widget('zii.widgets.jui.CJuiSortable',array(
'items'=>array(
'id1'=>'Item 1',
'id2'=>'Item 2',
'id3'=>'Item 3',
),
// additional javascript options for the JUI Sortable plugin
'options'=>array(
'delay'=>'300',
),
));
Настроив свойство options, вы можете указать опции, которые необходимо передать плагину JUI Sortable. Обратитесь к документации JUI Sortable API для возможных опций (имя-значение) и к странице JUI Sortable для общего описания и демо.
Если вы используете выражения JavaScript в коде, пожалуйста, оберните их с помощью CJavaScriptExpression, и Yii будет использовать их как код.
Свойства Public
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| actionPrefix | строка | префикс к идентификаторам действий. | CWidget |
| controller | CController | Возвращает контроллер, к которому принадлежит этот виджет. | CWidget |
| cssFile | смешанное | имя файла CSS темы. | CJuiWidget |
| htmlOptions | массив | HTML-атрибуты, которые должны быть отображены в HTML-теге, представляющем виджет JUI. | CJuiWidget |
| id | строка | Возвращает идентификатор виджета или генерирует новый, если запрошено. | CWidget |
| itemTemplate | строка | шаблон, который используется для генерации каждого сортируемого элемента. | CJuiSortable |
| items | массив | список сортируемых элементов (id=>содержимое элемента). | CJuiSortable |
| options | массив | начальные опции JavaScript, которые должны быть переданы плагину JUI. | CJuiWidget |
| owner | CBaseController | Возвращает владельца/создателя этого виджета. | CWidget |
| scriptFile | смешанное | главный файл JavaScript JUI. | CJuiWidget |
| scriptUrl | строка | корневой URL, содержащий все файлы JavaScript JUI. | CJuiWidget |
| skin | смешанное | имя используемой темы для этого виджета. | CWidget |
| tagName | строка | имя контейнерного элемента, содержащего все элементы. | CJuiSortable |
| theme | строка | имя темы JUI. | CJuiWidget |
| themeUrl | строка | корневой URL, содержащий все папки темы JUI. | CJuiWidget |
| viewPath | строка | Возвращает директорию, содержащую файлы представления для этого виджета. | CWidget |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает метод с заданным именем, который не является методом класса. | CComponent |
| __construct() | Конструктор. | CWidget |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение по его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства нулевым. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в значение null. | CComponent |
| actions() | Возвращает список действий, используемых этим виджетом. | CWidget |
| asa() | Возвращает объект поведения с заданным именем. | CComponent |
| attachBehavior() | Присоединяет поведение к этому компоненту. | CComponent |
| attachBehaviors() | Присоединяет список поведений к компоненту. | CComponent |
| attachEventHandler() | Присоединяет обработчик события к событию. | CComponent |
| beginCache() | Начинает кеширование фрагмента. | CBaseController |
| beginClip() | Начинает запись клипа. | CBaseController |
| beginContent() | Начинает отрисовку содержимого, которое должно быть обработано указанной представлением. | CBaseController |
| beginWidget() | Создаёт виджет и выполняет его. | CBaseController |
| canGetProperty() | Определяет, можно ли прочитать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| createWidget() | Создаёт виджет и инициализирует его. | CBaseController |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик события. | CComponent |
| disableBehavior() | Отключает присоединённое поведение. | CComponent |
| disableBehaviors() | Отключает все присоединённые к этому компоненту поведения. | CComponent |
| enableBehavior() | Включает присоединённое поведение. | CComponent |
| enableBehaviors() | Включает все присоединённые к этому компоненту поведения. | CComponent |
| endCache() | Завершает кеширование фрагмента. | CBaseController |
| endClip() | Завершает запись клипа. | CBaseController |
| endContent() | Завершает отрисовку содержимого. | CBaseController |
| endWidget() | Завершает выполнение указанного виджета. | CBaseController |
| evaluateExpression() | Вычисляет выражение PHP или обратный вызов в контексте этого компонента. | CComponent |
| getController() | Возвращает контроллер, к которому принадлежит этот виджет. | CWidget |
| getEventHandlers() | Возвращает список присоединённых обработчиков событий для события. | CComponent |
| getId() | Возвращает идентификатор виджета или генерирует новый, если запрошено. | CWidget |
| getOwner() | Возвращает владельца/создателя этого виджета. | CWidget |
| getViewFile() | Ищет файл сценария представления в соответствии с именем представления. | CWidget |
| getViewPath() | Возвращает каталог, содержащий файлы представления для этого виджета. | CWidget |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, имеет ли указанное событие присоединённые обработчики. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| init() | Инициализирует виджет. | CJuiWidget |
| raiseEvent() | Возбуждает событие. | CComponent |
| render() | Отображает представление. | CWidget |
| renderFile() | Отображает файл представления. | CBaseController |
| renderInternal() | Отображает файл представления. | CBaseController |
| run() | Выполнить этот виджет. | CJuiSortable |
| setId() | Устанавливает идентификатор виджета. | CWidget |
| widget() | Создаёт виджет и выполняет его. | CBaseController |
Защищённые методы
| Метод | Описание | Определено в |
|---|---|---|
| registerCoreScripts() | Регистрирует основные файлы скриптов. | CJuiWidget |
| registerScriptFile() | Регистрирует файл JavaScript в scriptUrl. | CJuiWidget |
| resolvePackagePath() | Определяет путь установки пакета JUI. | CJuiWidget |
Подробное описание свойств
itemTemplate свойство
public string $itemTemplate;
шаблон, используемый для генерации каждого элемента сортировки. Токен "{content}" в шаблоне будет заменён содержимым элемента, а "{id}" — идентификатором элемента.
items свойство
public array $items;
список элементов сортировки (id=>содержимое элемента). Обратите внимание, что содержимое элементов не будет кодироваться в HTML.
tagName свойство
public string $tagName;
имя контейнерного элемента, содержащего все элементы. По умолчанию 'ul'.
Подробное описание методов
run() метод
public void run() |
Исходный код: framework/zii/widgets/jui/CJuiSortable.php#70 (показать)
public function run()
{
$id=$this->getId();
if(isset($this->htmlOptions['id']))
$id=$this->htmlOptions['id'];
else
$this->htmlOptions['id']=$id;
$options=CJavaScript::encode($this->options);
Yii::app()->getClientScript()->registerScript(__CLASS__.'#'.$id,"jQuery('#{$id}').sortable({$options});");
echo CHtml::openTag($this->tagName,$this->htmlOptions)."\n";
foreach($this->items as $id=>$content)
echo strtr($this->itemTemplate,array('{id}'=>$id,'{content}'=>$content))."\n";
echo CHtml::closeTag($this->tagName);
}
Запустите этот виджет. Этот метод регистрирует необходимый JavaScript и рендерит необходимый HTML-код.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CJuiSortable