Spec-Zone.ru › Yii 1.1

CInputWidget

Пакет system.web.widgets
Наследование абстрактный класс CInputWidget » CWidget » CBaseController » CComponent
Подклассы CAutoComplete, CMaskedTextField, CMultiFileUpload, CStarRating
С версии 1.0
Исходный код framework/web/widgets/CInputWidget.php
CInputWidget — базовый класс виджетов, собирающих пользовательский ввод.

CInputWidget объявляет свойства, общие для виджетов ввода. Виджет ввода может быть связан с моделью данных и атрибутом или именем и значением. Если это первое, имя и значение будут сгенерированы автоматически. Подклассы могут использовать resolveNameID и hasModel.

Свойства public

Свойство Тип Описание Определено в
actionPrefix строка префикс к идентификаторам действий. CWidget
attribute строка атрибут, связанный с этим виджетом. CInputWidget
controller CController Возвращает контроллер, к которому принадлежит этот виджет. CWidget
htmlOptions массив дополнительные HTML-параметры для отображения в теге ввода CInputWidget
id строка Возвращает ID виджета или генерирует новый, если запрошено. CWidget
model CModel модель данных, связанная с этим виджетом. CInputWidget
name строка имя ввода. CInputWidget
owner CBaseController Возвращает владельца/создателя этого виджета. CWidget
skin смешанный тип имя используемой темы для этого виджета. CWidget
value строка значение ввода CInputWidget
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() Инициализирует виджет. CWidget
raiseEvent() Возбуждает событие. CComponent
render() Рендерит представление. CWidget
renderFile() Рендерит файл представления. CBaseController
renderInternal() Рендерит файл представления. CBaseController
run() Выполняет виджет. CWidget
setId() Устанавливает идентификатор виджета. CWidget
widget() Создаёт виджет и выполняет его. CBaseController

Защищённые методы

Метод Описание Определено в
hasModel() Определяет, связан ли этот виджет с моделью данных. CInputWidget
resolveNameID() CInputWidget

Подробное описание свойств

attribute свойство

public string $attribute;

атрибут, связанный с этим виджетом. Имя может содержать квадратные скобки (например, 'name[1]'), используемые для сбора ввода табличных данных.

htmlOptions свойство

public array $htmlOptions;

дополнительные HTML-параметры, которые будут отображаться в теге ввода

model свойство

public CModel $model;

модель данных, связанная с этим виджетом.

name свойство

public string $name;

имя ввода. Это должно быть установлено, если model не установлено.

value свойство

public string $value;

значение ввода

Подробное описание методов

hasModel() метод

protected boolean hasModel()
{return} boolean указывает, связан ли этот виджет с моделью данных.
Исходный код: framework/web/widgets/CInputWidget.php#77 (показать)
protected function hasModel()
{
    return 
$this->model instanceof CModel && $this->attribute!==null;
}

resolveNameID() метод

protected array resolveNameID()
{return} массив имя и ID элемента ввода.
Исходный код: framework/web/widgets/CInputWidget.php#52 (показать)
protected function resolveNameID()
{
    if(
$this->name!==null)
        
$name=$this->name;
    elseif(isset(
$this->htmlOptions['name']))
        
$name=$this->htmlOptions['name'];
    elseif(
$this->hasModel())
        
$name=CHtml::activeName($this->model,$this->attribute);
    else
        throw new 
CException(Yii::t('yii','{class} must specify "model" and "attribute" or "name" property values.',array('{class}'=>get_class($this))));

    if((
$id=$this->getId(false))===null)
    {
        if(isset(
$this->htmlOptions['id']))
            
$id=$this->htmlOptions['id'];
        else
            
$id=CHtml::getIdByName($name);
    }

    return array(
$name,$id);
}

© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CInputWidget

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API