Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何以红色显示窗体errorSummary()?_Php_Html_Forms_Yii_Widget - Fatal编程技术网

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)。你可以在这里找到答案是的,这很有效。我刚刚在这里找到的: