Javascript 基于Yii形式的角度形式验证

Javascript 基于Yii形式的角度形式验证,javascript,php,angularjs,forms,yii,Javascript,Php,Angularjs,Forms,Yii,我在Yii动态表单中使用AngularJS v1.3.15进行表单验证,但角度验证似乎对输入名称有效。问题是输入的名称采用数组格式,例如:name=“LoginForm[username]”。我在这里复制我的代码: <div class="col-md-4 col-md-offset-4 m-t-lg" ng-app="validationApp" ng-controller="mainController"> <section class="pa

我在Yii动态表单中使用AngularJS v1.3.15进行表单验证,但角度验证似乎对输入名称有效。问题是输入的名称采用数组格式,例如:
name=“LoginForm[username]”
。我在这里复制我的代码:

   <div class="col-md-4 col-md-offset-4 m-t-lg" ng-app="validationApp" ng-controller="mainController">
            <section class="panel">
                <header class="panel-heading text-center"><strong>Admin Sign in </strong> </header>
                <?php 
                        $form=$this->beginWidget('CActiveForm', array(
                            'id'=>'formLogin',
                            'htmlOptions'=> array('name'=>'userForm', 'class'=>'panel-body', 'ng-submit'=>'submitForm($event)', 'novalidate'=>'true'),
                            'action'=>'#',
                            'enableAjaxValidation'=>false,
                        )); 
                    ?>
                    <div class="form-group" ng-class="{'has-error' :  userForm.username.$invalid && !userForm.username.$pristine}">
                        <label class="control-label">Email</label> 
                        <?php echo $form->emailField($model, 'username', array('placeholder'=>'test@example.com', 'class'=>'form-control', 'ng-model'=>'user.username', 'ng-pattern'=>"/^[_a-z0-9]+(\.[_a-z0-9]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/", 'required'=>'true', 'id'=>'username')); ?>
                        <?php echo $form->error($model,'username'); ?>
                    </div>
                    <div class="form-group" ng-class="{'has-error' :  userForm.password.$invalid && !userForm.password.$pristine}">
                        <label class="control-label">Password</label> 
                        <input type="password" placeholder="Password" ng-minlength="6" class="form-control" name="password" ng-model="user.password" required>
                    </div>
                    <div class="checkbox">
                        <label> <input type="checkbox"> Keep me logged in
                        </label>
                    </div>
                    <button type="submit" class="btn btn-info" ng-disabled="userForm.$invalid">Sign in</button>
                <?php $this->endwidget(); ?>
            </section>
        </div>
    </div>

如果我将输入的名称更改为单个单词,如“username”和“password”,则效果很好,但在当前情况下,如果名称为“LoginForm[username]”,则不起作用。密码字段可以正常工作,因为它的简单名称与用户名字段不同。

请查看以下链接:

在转义字段之后,似乎必须分别验证每个字段


能否显示生成表单的代码?
      var app = angular.module('validationApp',[]);
         app.controller('mainController', function($scope) {
            $scope.submitForm = function($event){
            if ($scope.userForm.$valid){
                $scope.submit();
            } else $event.preventDefault();
         } 
      });