Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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
Ajax 在yii中进行服务器端验证后,未使用登录表单在模型窗口中显示错误_Ajax_Validation_Yii_Modal Window_Server Side Validation - Fatal编程技术网

Ajax 在yii中进行服务器端验证后,未使用登录表单在模型窗口中显示错误

Ajax 在yii中进行服务器端验证后,未使用登录表单在模型窗口中显示错误,ajax,validation,yii,modal-window,server-side-validation,Ajax,Validation,Yii,Modal Window,Server Side Validation,我在模块中有一个登录表单,它使用一个chtml文本字段,该字段使用jQuery进行客户端验证,但如果用户不存在并输入这两个字段,它将重定向到登录url,并且不会在模式弹出窗口中显示错误 我在主布局中通过ajax调用模块登录。它可以出现在任何页面中,并完美地调用登录 但是,如果登录凭据错误,唯一不起作用的是服务器端验证。它将重定向到用户/登录页面,并且不会在模式窗口中显示服务器端验证错误 <?php echo CHtml::beginForm(); ?> <div cla

我在模块中有一个登录表单,它使用一个chtml文本字段,该字段使用jQuery进行客户端验证,但如果用户不存在并输入这两个字段,它将重定向到登录url,并且不会在模式弹出窗口中显示错误

我在主布局中通过ajax调用模块登录。它可以出现在任何页面中,并完美地调用登录

但是,如果登录凭据错误,唯一不起作用的是服务器端验证。它将重定向到用户/登录页面,并且不会在模式窗口中显示服务器端验证错误

   <?php echo CHtml::beginForm(); ?>

<div class="row1">

    <?php echo CHtml::activeTextField($model,'username',array('placeholder'=>'Username or Email','class'=>'pclas')) ?>
</div>

<div class="row1">

    <?php echo CHtml::activePasswordField($model,'password',array('placeholder'=>'Password','class'=>'pclas')) ?>
</div>


<div class="remsub">
<div class="rememberMe1">
    <?php echo CHtml::activeCheckBox($model,'rememberMe',array('class'=>"btn1"));echo CHtml::activeLabelEx($model,'rememberMe',array('class'=>"btn1"));  ?>
    <?php ?>
</div>

<div class="submit1">
    <?php echo CHtml::submitButton(UserModule::t("Login"),array('class'=>"btn")); ?>
</div>
 <div class="regpwd">
  <?php echo CHtml::link(UserModule::t("Register"),Yii::app()->getModule('user')->registrationUrl,array('class'=>'pclas1')); ?> | <?php echo CHtml::link(UserModule::t("Lost Password?"),Yii::app()->getModule('user')->recoveryUrl,array('class'=>'pclas1')); ?>

 < /div>    
</div>

  <?php echo CHtml::endForm(); ?>

| 



这是一个登录表单而不是一个注册表单是我所需要的,或者任何其他解决方案都将不胜感激

是的,请添加您的代码,以便我们知道您在做什么

一些可能有帮助的事情:

  • 可能不允许使用表单的用户访问执行验证的控制器/操作?这将导致Yii将他/她重定向到登录页面。尝试查看执行验证的控制器/操作的权限

  • 确保表单已启用ajax验证:

    <?php $form = $this->beginWidget('CActiveForm', array(
        'id'=>'user-form',
        'enableAjaxValidation'=>true, <----------
        'enableClientValidation'=>true, 
        'focus'=>array($model,'firstName'),
    )); ?>
    
    
    

添加代码示例会更有帮助更新了我的问题是我已经完成了工作知道:)更新了我的问题,它不是注册表,而是登录表
<?php $form = $this->beginWidget('CActiveForm', array(
    'id'=>'user-form',
    'enableAjaxValidation'=>true, <----------
    'enableClientValidation'=>true, 
    'focus'=>array($model,'firstName'),
)); ?>