Spec-Zone.ru › Yii 1.1

CFormButtonElement

Пакет system.web.form
Наследование class CFormButtonElement » CFormElement » CComponent
С момента 1.1
Исходный код framework/web/form/CFormButtonElement.php
CFormButtonElement представляет элемент кнопки формы.

CFormButtonElement может представлять следующие типы кнопок в зависимости от свойства type:
  • htmlButton: обычная кнопка, сгенерированная с помощью CHtml::htmlButton
  • htmlReset: кнопка сброса, сгенерированная с помощью CHtml::htmlButton
  • htmlSubmit: кнопка отправки, сгенерированная с помощью CHtml::htmlButton
  • submit: кнопка отправки, сгенерированная с помощью CHtml::submitButton
  • button: обычная кнопка, сгенерированная с помощью CHtml::button
  • image: кнопка изображения, сгенерированная с помощью CHtml::imageButton
  • reset: кнопка сброса, сгенерированная с помощью CHtml::resetButton
  • link: кнопка ссылки, сгенерированная с помощью CHtml::linkButton
Свойство type также может быть именем класса или псевдонимом пути к классу. В этом случае кнопка генерируется с помощью виджета указанного класса. Обратите внимание, что у виджета должно быть свойство с именем "name".

Поскольку CFormElement является предковым классом CFormButtonElement, значение, присвоенное несуществующему свойству, будет храниться в attributes, что будет передано в качестве значений атрибутов HTML методу CHtml, генерирующему кнопку, или начальными значениями свойств виджета.

Свойства

Свойство Тип Описание Определено в
attributes массив список атрибутов (имя=>значение) для HTML-элемента, представленного этим объектом. CFormElement
coreTypes массив Основные типы кнопок (псевдоним=>имя метода CHtml) CFormButtonElement
label строка метка этой кнопки. CFormButtonElement
name строка имя этой кнопки CFormButtonElement
on строка Возвращает значение, указывающее, в каких сценариях эта кнопка отображается. CFormButtonElement
parent смешанный тип непосредственный родитель этого элемента. CFormElement
type строка тип этой кнопки. CFormButtonElement
visible булево Возвращает значение, указывающее, отображается ли этот элемент и должен ли он быть отображен. CFormElement

Публичные методы

Метод Описание Определено в
__call() Вызывает метод с указанным именем, который не является методом класса. CComponent
__construct() Конструктор. CFormElement
__get() Возвращает значение свойства или атрибута. CFormElement
__isset() Проверяет наличие или непустоту значения свойства или атрибута. CFormElement
__set() Устанавливает значение свойства или атрибута. CFormElement
__toString() Преобразует объект в строку. CFormElement
__unset() Устанавливает свойство компонента в null. CComponent
asa() Возвращает объект поведения с указанным именем. CComponent
attachBehavior() Прикрепляет поведение к этому компоненту. CComponent
attachBehaviors() Прикрепляет список поведений к компоненту. CComponent
attachEventHandler() Прикрепляет обработчик событий к событию. CComponent
canGetProperty() Определяет, может ли свойство быть прочитано. CComponent
canSetProperty() Определяет, может ли свойство быть установлено. CComponent
configure() Настраивает этот объект с начальными значениями свойств. CFormElement
detachBehavior() Открепляет поведение от компонента. CComponent
detachBehaviors() Открепляет все поведения от компонента. CComponent
detachEventHandler() Открепляет существующий обработчик событий. CComponent
disableBehavior() Отключает присоединённое поведение. CComponent
disableBehaviors() Отключает все присоединенные поведения к этому компоненту. CComponent
enableBehavior() Включает присоединённое поведение. CComponent
enableBehaviors() Включает все присоединённые к этому компоненту поведения. CComponent
evaluateExpression() Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. CComponent
getEventHandlers() Возвращает список присоединённых обработчиков событий для события. CComponent
getOn() Возвращает значение, указывающее, в каких сценариях эта кнопка отображается. CFormButtonElement
getParent() Возвращает непосредственного родителя этого элемента. Это может быть объект CForm или объект CBaseController (контроллер или виджет). CFormElement
getVisible() Возвращает значение, указывающее, отображается ли этот элемент и должен ли он быть отображен. CFormElement
hasEvent() Определяет, определено ли событие. CComponent
hasEventHandler() Проверяет, есть ли обработчики присоединённые к событию с указанным именем. CComponent
hasProperty() Определяет, определено ли свойство. CComponent
raiseEvent() Вызывает событие. CComponent
render() Возвращает эту кнопку. CFormButtonElement
setOn() Устанавливает имена сценариев, разделённые запятыми. CFormButtonElement
setVisible() Устанавливает, отображается ли этот элемент и должен ли он быть отображён. CFormElement

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

Метод Описание Определено в
evaluateVisible() Оценивает видимость этого элемента. CFormButtonElement

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

coreTypes свойство

public static array $coreTypes;

Типы кнопок (псевдоним => имя метода CHtml).

label свойство

public string $label;

Текст метки этой кнопки. Это свойство игнорируется, когда для создания кнопки используется виджет.

name свойство

public string $name;

Имя этой кнопки.

on свойство

public string getOn()
public void setOn(string $value)

Возвращает значение, указывающее, в каких сценариях эта кнопка видима. Если значение пустое, это означает, что кнопка видна во всех сценариях. В противном случае, кнопка будет видна только тогда, когда модель находится в сценарии, имя которого есть в этом значении. См. CModel::scenario для получения дополнительной информации о сценариях модели.

type свойство

public string $type;

Тип этой кнопки. Это может быть имя класса, псевдоним пути к имени класса или псевдоним типа кнопки (submit, button, image, reset, link, htmlButton, htmlSubmit, htmlReset).

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

evaluateVisible() метод

protected boolean evaluateVisible()
{возврат} boolean является ли этот элемент видимым.
Исходный код: framework/web/form/CFormButtonElement.php#134 (показать)
protected function evaluateVisible()
{
    return empty(
$this->_on) || in_array($this->getParent()->getModel()->getScenario(),$this->_on);
}

Оценивает видимость этого элемента. Этот метод проверяет свойство on, чтобы определить, находится ли модель в сценарии, который должен отображать эту строку.

getOn() метод

public string getOn()
{возврат} строка названия сценариев, разделенные запятыми. По умолчанию равно null.
Исходный код: framework/web/form/CFormButtonElement.php#79 (показать)
public function getOn()
{
    return 
$this->_on;
}

Возвращает значение, указывающее, в каких сценариях эта кнопка видима. Если значение пустое, это означает, что кнопка видна во всех сценариях. В противном случае, кнопка будет видна только тогда, когда модель находится в сценарии, имя которого есть в этом значении. См. CModel::scenario для получения дополнительной информации о сценариях модели.

render() метод

public string render()
{возврат} строка результат рендеринга
Исходный код: framework/web/form/CFormButtonElement.php#96 (показать)
public function render()
{
    
$attributes=$this->attributes;
    if(isset(
self::$coreTypes[$this->type]))
    {
        
$method=self::$coreTypes[$this->type];
        if(
$method==='linkButton')
        {
            if(!isset(
$attributes['params'][$this->name]))
                
$attributes['params'][$this->name]=1;
        }
        elseif(
$method==='htmlButton')
        {
            
$attributes['type']=$this->type==='htmlSubmit' ? 'submit' : ($this->type==='htmlReset' ? 'reset' : 'button');
            
$attributes['name']=$this->name;
        }
        else
            
$attributes['name']=$this->name;
        if(
$method==='imageButton')
            return 
CHtml::imageButton(isset($attributes['src']) ? $attributes['src'] : '',$attributes);
        else
            return 
CHtml::$method($this->label,$attributes);
    }
    else
    {
        
$attributes['name']=$this->name;
        
ob_start();
        
$this->getParent()->getOwner()->widget($this->type, $attributes);
        return 
ob_get_clean();
    }
}

Возвращает эту кнопку.

setOn() метод

public void setOn(string $value)
$value строка названия сценариев, разделенные запятыми.
Исходный код: framework/web/form/CFormButtonElement.php#87 (показать)
public function setOn($value)
{
    
$this->_on=preg_split('/[\s,]+/',$value,-1,PREG_SPLIT_NO_EMPTY);
}

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

Spec-Zone.ru

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