必須フィールドのアスタリスクを削除するにはどうすればよいですか?
最初にコード実装を分析しましょう:
パブリック関数 labelEx($model,$attribute,$htmlOptions=array())
{
return CHtml::activeLabelEx($model,$attribute,$htmlOptions);
}
パブリック静的関数 activeLabelEx($model,$attribute,$htmlOptions=array())
{
$realAttribute=$attribute;
self::resolveName($model,$attribute) // 角括弧があれば削除します
$htmlOptions['required']=$model->isAttributeRequired($attribute);
return self::activeLabel($model,$realAttribute,$htmlOptions);
}
属性が必要な場合、追加の CSS クラス タグがレンダリングされます。具体的には、CModel::isAttributeRequired を呼び出して、属性が必須かどうかを判断します。その場合、CSS クラス CHtml::requiredCss (public static $requiredCss='required';) がラベルに追加され、CHtml::beforeRequiredLabel (public static $beforeRequiredLabel='';) および CHtml::afterRequiredLabel (public static $afterRequiredLabel='*';) ラベルを装飾します。
パブリック関数 isAttributeRequired($attribute)www.2cto.com
{
foreach($this->getValidators($attribute) as $validator)
{
if(CRequiredValidatorの$validatorインスタンス) trueを返します;
}
false を返す;
}
そのため、アスタリスクを削除したり、他のものに変更したい場合は、ビュー内で CHtml::requiredCss、CHtml::beforeRequiredLabel、CHtml::afterRequiredLabel を直接再定義できます
アスタリスクは表示しないでください
labelEx($model,'email');>
http://www.bkjia.com/PHPjc/477799.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/477799.html技術記事必須フィールドのアスタリスクを削除するにはどうすればよいですか? まずコード実装を分析しましょう: public function labelEx($model,$attribute,$htmlOptions=array()) { return CHtml::activeLabelEx($model,$attribute,$...
)