Php 如何以红色显示窗体errorSummary()?
我有以下表格:Php 如何以红色显示窗体errorSummary()?,php,html,forms,yii,widget,Php,Html,Forms,Yii,Widget,我有以下表格: <?php $form = $this->beginWidget('CActiveForm', array( 'id' => 'login-form', 'enableClientValidation' => true, 'clientOptions' => array( 'validateOnSubmit' => true,
<?php
$form = $this->beginWidget('CActiveForm', array(
'id' => 'login-form',
'enableClientValidation' => true,
'clientOptions' => array(
'validateOnSubmit' => true,
),
));
$errorMsg = $form->errorSummary($userModel, "", "");
if(!empty($errorMsg))
{
echo '<div class="alert alert-danger" style="text-align:center; width:800px; margin:auto;">' . $errorMsg . '</div>';
echo '<br>';
}
$form->labelEx($userModel, 'email');
echo $form->textField($userModel, 'email');
$form->error($userModel, 'email');
?>
我试图在电子邮件无效时打印错误消息,但我想使用引导程序中的红色背景打印它。问题是没有任何错误,它仍然显示红色条
这似乎是因为errorSummary()
从来都不是真正的null
输出:
这不是总结的工作方式
errorSummary()
-函数始终返回要添加到页面的内容。如果没有错误,该函数将确保返回的
div
标记为隐藏
这样做的原因是,总结也用于前端验证。javascript将在需要时更新并隐藏/显示div
所以基本上你应该这样做:
echo $form->errorSummary($userModel, "", "", array('class' => "alert alert-danger"));
如果(!empty($errorMsg))…您可以像这样更改类,那么就去掉多余的
:
<?= $form->errorSummary($model, ['class' => 'alert alert-danger']); ?>
你是说$errorMsg而不是errorSummery()还是?发布变量转储($errorMsg)$errorMsg=errorSummary()
。但是var dump打印NULL
。在if条件下使用isset($errorMsg)。你可以在这里找到答案是的,这很有效。我刚刚在这里找到的: