Package | system.web.form |
---|---|
Inheritance | class CFormButtonElement » CFormElement » CComponent |
Since | 1.1 |
Source Code | framework/web/form/CFormButtonElement.php |
Property | Type | Description | Defined By |
---|---|---|---|
attributes | array | list of attributes (name=>value) for the HTML element represented by this object. | CFormElement |
coreTypes | array | Core button types (alias=>CHtml method name) | CFormButtonElement |
label | string | the label of this button. | CFormButtonElement |
name | string | name of this button | CFormButtonElement |
on | string | Returns a value indicating under which scenarios this button is visible. | CFormButtonElement |
parent | mixed | the direct parent of this element. | CFormElement |
type | string | the type of this button. | CFormButtonElement |
visible | boolean | Returns a value indicating whether this element is visible and should be rendered. | CFormElement |
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | CComponent |
__construct() | Constructor. | CFormElement |
__get() | Returns a property value or an attribute value. | CFormElement |
__isset() | Checks a property value or an attribute value on existence or not null | CFormElement |
__set() | Sets value of a property or attribute. | CFormElement |
__toString() | Converts the object to a string. | CFormElement |
__unset() | Sets a component property to be null. | CComponent |
asa() | Returns the named behavior object. | CComponent |
attachBehavior() | Attaches a behavior to this component. | CComponent |
attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
attachEventHandler() | Attaches an event handler to an event. | CComponent |
canGetProperty() | Determines whether a property can be read. | CComponent |
canSetProperty() | Determines whether a property can be set. | CComponent |
configure() | Configures this object with property initial values. | CFormElement |
detachBehavior() | Detaches a behavior from the component. | CComponent |
detachBehaviors() | Detaches all behaviors from the component. | CComponent |
detachEventHandler() | Detaches an existing event handler. | CComponent |
disableBehavior() | Disables an attached behavior. | CComponent |
disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
enableBehavior() | Enables an attached behavior. | CComponent |
enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
evaluateExpression() | Evaluates a PHP expression or callback under the context of this component. | CComponent |
getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
getOn() | Returns a value indicating under which scenarios this button is visible. | CFormButtonElement |
getParent() | Returns the direct parent of this element. This could be either a CForm object or a CBaseController object (a controller or a widget). | CFormElement |
getVisible() | Returns a value indicating whether this element is visible and should be rendered. | CFormElement |
hasEvent() | Determines whether an event is defined. | CComponent |
hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
hasProperty() | Determines whether a property is defined. | CComponent |
raiseEvent() | Raises an event. | CComponent |
render() | Returns this button. | CFormButtonElement |
setOn() | Sets scenario names separated by commas. | CFormButtonElement |
setVisible() | Sets whether this element is visible and should be rendered. | CFormElement |
Method | Description | Defined By |
---|---|---|
evaluateVisible() | Evaluates the visibility of this element. | CFormButtonElement |
Core button types (alias=>CHtml method name)
the label of this button. This property is ignored when a widget is used to generate the button.
name of this button
Returns a value indicating under which scenarios this button is visible. If the value is empty, it means the button is visible under all scenarios. Otherwise, only when the model is in the scenario whose name can be found in this value, will the button be visible. See CModel::scenario for more information about model scenarios.
the type of this button. This can be a class name, a path alias of a class name, or a button type alias (submit, button, image, reset, link, htmlButton, htmlSubmit, htmlReset).
protected boolean evaluateVisible()
| ||
{return} | boolean | whether this element is visible. |
protected function evaluateVisible()
{
return empty($this->_on) || in_array($this->getParent()->getModel()->getScenario(),$this->_on);
}
Evaluates the visibility of this element. This method will check the on property to see if the model is in a scenario that should have this string displayed.
public string getOn()
| ||
{return} | string | scenario names separated by commas. Defaults to null. |
public function getOn()
{
return $this->_on;
}
Returns a value indicating under which scenarios this button is visible. If the value is empty, it means the button is visible under all scenarios. Otherwise, only when the model is in the scenario whose name can be found in this value, will the button be visible. See CModel::scenario for more information about model scenarios.
public string render()
| ||
{return} | string | the rendering result |
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();
}
}
Returns this button.
public void setOn(string $value)
| ||
$value | string | scenario names separated by commas. |
public function setOn($value)
{
$this->_on=preg_split('/[\s,]+/',$value,-1,PREG_SPLIT_NO_EMPTY);
}
Signup or Login in order to comment.