首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 相關知識

Yii 1.x 去除表單必填項標籤後的紅色星號(*)

     編輯:PHP 相關知識

原理分析

CHtml::activeLabelEx() 會檢查模型屬性是否為必填(CRequiredValidator),若是則在標籤後追加 CHtml::afterRequiredLabel(默認 *)並加上 required CSS 類。

最簡單的去除方法:視圖中覆蓋靜態屬性

<?php CHtml::$afterRequiredLabel = ''; ?>
<?= $form->labelEx($model, 'email') ?>

亦可自定義為其他提示:CHtml::$afterRequiredLabel = ' (必填)';

全局生效:配置文件或基類控制器

// protected/config/main.php 引入一個初始化腳本
'onBeginRequest'=>function() { CHtml::$afterRequiredLabel = ''; }

或在 Controller::init() 中設置,影響全站。

CSS 隱藏法(不改動 PHP)

.required::after { content: none; } /* 或 display:none */

配合 CHtml::$requiredCss = 'required'; 生成的類名隱藏星號。

注意

  • 去除星號**不影響驗證邏輯**,僅視覺呈現變化。
  • 若需保留無障礙語義,建議改為文字提示(如「必填」)而非完全隱藏。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved