Yii Framework v1.1.10 绫诲弬鑰

CFormButtonElement

system.web.form
缁ф壙 class CFormButtonElement » CFormElement » CComponent
婧愯嚜 1.1
鐗堟湰 $Id: CFormButtonElement.php 3426 2011-10-25 00:01:09Z alexander.makarow $
婧愮爜 framework/web/form/CFormButtonElement.php
CFormButtonElement 浠h〃涓涓〃鍗曟寜閽厓绱犮

CFormButtonElement 鑳戒唬琛ㄥ涓嬪熀浜type灞炴ф寜閽殑绫诲瀷锛 type灞炴у彲浠ユ槸涓涓被鍚嶆垨鑰呬竴涓被鐨勮矾寰勫埆鍚嶃 鏃㈢劧杩欐牱锛屾寜閽彲浠ョ敱涓涓壒瀹氱殑绫荤殑鎸備欢鏉ョ敓鎴愩 娉ㄦ剰锛屾寕浠跺繀椤绘湁涓涓睘鎬у彨"name"銆

鍥犱负CFormElement鏄疌FormButtonElement鐨勪竴涓鍏堢被锛 涓涓兼寚娲剧粰涓涓笉瀛樺湪鐨勫睘鎬у皢琚瓨鍌ㄥ湪attributes涓紝 鐒跺悗浣滀负涓涓狧TML灞炴т紶閫掔粰CHtml鏂规硶鏉ョ敓鎴愭寜閽垨鍒濆鍖栨寕浠跺睘鎬с

鍏叡灞炴

闅愯棌缁ф壙灞炴

灞炴绫诲瀷鎻忚堪瀹氫箟鍦
attributes array 閫氳繃杩欎釜瀵硅薄鏉ヨ〃鐜癏TML鍏冪礌鐨勫睘鎬у垪琛(name=>value)銆 CFormElement
coreTypes 鏍稿績鎸夐挳绫诲瀷(鍒悕=>CHtml鏂规硶鍚) CFormButtonElement
label string 鎸夐挳鐨勬爣绛. CFormButtonElement
name string 鎸夐挳鐨勫悕绉 CFormButtonElement
on string 杩斿洖鍊艰〃鏄庤繖涓寜閽湪鍝簺鍦烘櫙涓槸鍙鐨勩 CFormButtonElement
parent mixed 杩欎釜鍏冪礌鐨勭湡绯荤埗绫汇傚畠鍙兘鏄CForm瀵硅薄锛屼篃鍙兘鏄CBaseController瀵硅薄銆 (鎺у埗鍣ㄦ垨鎸備欢)銆 CFormElement
type string 鎸夐挳鐨勭被鍨嬨傚畠鍙互鏄竴涓被鍚嶏紝鍙互鏄竴涓被鍚嶇殑璺緞鍒悕锛 涔熷彲浠ユ槸涓涓寜閽被鍨嬪埆鍚(submit, button, image, reset, link, htmlButton, htmlSubmit, htmlReset). CFormButtonElement
visible boolean 杩斿洖鍊艰鏄庤繖涓厓绱犳槸鍚﹀彲瑙佸苟闇瑕佹覆鏌撱 CFormElement

鍏叡鏂规硶

闅愯棌缁ф壙鏂规硶

鏂规硶鎻忚堪瀹氫箟鍦
__call() 濡傛灉绫讳腑娌℃湁璋冪殑鏂规硶鍚嶏紝鍒欒皟鐢ㄨ繖涓柟娉曘 CComponent
__construct() 鏋勯犲櫒銆 CFormElement
__get() 杩斿洖灞炴у笺 CFormElement
__isset() 妫鏌ヤ竴涓睘鎬ф槸鍚︿负null銆 CComponent
__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() 璁$畻涓涓狿HP琛ㄨ揪寮忥紝鎴栨牴鎹粍浠朵笂涓嬫枃鎵ц鍥炶皟銆 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 鏍稿績鎸夐挳绫诲瀷(鍒悕=>CHtml鏂规硶鍚) $coreTypes;

label 灞炴
public string $label;

鎸夐挳鐨勬爣绛. 褰撴寜閽槸涓涓寕浠剁敓鎴愭椂锛岃繖涓睘鎬ц蹇界暐銆

name 灞炴
public string $name;

鎸夐挳鐨勫悕绉

on 灞炴
public string getOn()
public void setOn(string $value)

杩斿洖鍊艰〃鏄庤繖涓寜閽湪鍝簺鍦烘櫙涓槸鍙鐨勩 濡傛灉杩欎釜鍊间负绌猴紝鎰忓懗鐫鎸夐挳鍦ㄦ墍鏈夌殑鍦烘櫙涓彲瑙併 鍚﹀垯锛屽彧鏈夊綋鍦ㄥ満鏅腑鐨勬ā鍨嬪悕鍦ㄨ繖涓间腑鑳芥壘鍒版椂锛 鎸夐挳鏄彲瑙佺殑銆 鏌ョ湅CModel::scenario鏉ヤ簡瑙f洿澶氬叧浜庢ā鍨嬪満鏅殑淇℃伅銆

type 灞炴
public string $type;

鎸夐挳鐨勭被鍨嬨傚畠鍙互鏄竴涓被鍚嶏紝鍙互鏄竴涓被鍚嶇殑璺緞鍒悕锛 涔熷彲浠ユ槸涓涓寜閽被鍨嬪埆鍚(submit, button, image, reset, link, htmlButton, htmlSubmit, htmlReset).

鏂规硶璇︾粏

evaluateVisible() 鏂规硶
protected boolean evaluateVisible()
{return} boolean 鍏冪礌鏄惁鍙銆
婧愮爜锛 framework/web/form/CFormButtonElement.php#135 (鏄剧ず)
protected function evaluateVisible()
{
    return empty(
$this->_on) || in_array($this->getParent()->getModel()->getScenario(),$this->_on);
}

璇勪及杩欎釜鍏冪礌鏄惁鍙銆 杩欎釜鏂规硶灏嗘鏌on灞炴ф潵纭畾 濡傛灉妯″瀷鍦ㄥ満鏅腑閭d箞搴旇瀛楃涓叉樉绀恒

getOn() 鏂规硶
public string getOn()
{return} string 閫楀彿鍒嗛殧鐨勫満鏅悕銆傞粯璁や负null銆
婧愮爜锛 framework/web/form/CFormButtonElement.php#80 (鏄剧ず)
public function getOn()
{
    return 
$this->_on;
}

杩斿洖鍊艰〃鏄庤繖涓寜閽湪鍝簺鍦烘櫙涓槸鍙鐨勩 濡傛灉杩欎釜鍊间负绌猴紝鎰忓懗鐫鎸夐挳鍦ㄦ墍鏈夌殑鍦烘櫙涓彲瑙併 鍚﹀垯锛屽彧鏈夊綋鍦ㄥ満鏅腑鐨勬ā鍨嬪悕鍦ㄨ繖涓间腑鑳芥壘鍒版椂锛 鎸夐挳鏄彲瑙佺殑銆 鏌ョ湅CModel::scenario鏉ヤ簡瑙f洿澶氬叧浜庢ā鍨嬪満鏅殑淇℃伅銆

render() 鏂规硶
public string render()
{return} string 娓叉煋缁撴灉
婧愮爜锛 framework/web/form/CFormButtonElement.php#97 (鏄剧ず)
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;
        }
        else if(
$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 string 閫楀彿鍒嗛殧鐨勫満鏅悕銆
婧愮爜锛 framework/web/form/CFormButtonElement.php#88 (鏄剧ず)
public function setOn($value)
{
    
$this->_on=preg_split('/[\s,]+/',$value,-1,PREG_SPLIT_NO_EMPTY);
}

Copyright © 2008-2011 by Yii Software LLC
All Rights Reserved.