2014-09-20 2 views
0

У меня есть форма внутри углового бутстрапового аккордеона.Недоступен form.valid в угловой бутстрап js

, как показано ниже.

<accordion close-others="oneAtATime"> 
      <accordion-group is-open="status.open"> 

     <ng-form name="createAssetForm" onsubmit="" novalidate class="form-horizontal">      
        <fieldset> 
         <div class="form-group"> 
          <label class="col-lg-2 control-label" for="AssetName">AssetName</label> 
          <div class="col-lg-10"> 
           <div class="error error-msg" ng-show="(createAssetForm.AssetName.$dirty && createAssetForm.AssetName.$invalid && (!createAssetForm.AssetName.$focused))"> 
            <small class="error" 
              ng-show="createAssetForm.AssetName.$error.minlength"> 
             Project name is required to be at 
             least 3 characters 
            </small> 
            <small class="error" ng-show="createAssetForm.AssetName.$error.maxlength"> 
             Project name cannot be longer than 
             250 characters 
            </small> 
           </div> 
           <input ng-focus ng-minlength="3" ng-maxlength="250" name="AssetName" class="form-control" type="text" placeholder="Asset Name" ng-model="NewAsset.AssetName" /> 
          </div> 
         </div> 
        </fieldset> 
</ng-form> 

     </accordion-group> 
    </accordion> 

В мой контроллер, я не могу получить доступ к

$scope.createAssetForm.$valid 

Направить на этой странице

.state('manageasset', { 
     url: '/userstories/projects/:projectid/asset', 
     templateUrl: '/app/userstories/assets/views/assetHome.html', 
     controller: 'US_assetController', 
     resolve: { 
      IsAuthenticated: ['AuthService', function (AuthService) { 
       return AuthService.isAuthendicatedPromised(); 
      }] 
     }, 
     data: { 
      isAuthenticated: true 
     } 
    }) 

Пожалуйста, помогите мне найти проблему!

+0

Где конфигурация HTML/маршрутизации вашей декларации контроллер? – miensol

+0

Маршрутизация прилагается – sathishkumar

+0

@sathishkumar Что такое проблема? – soorapadman

ответ

0

Я не уверен, может быть, это лучший вариант, но вы Cann доступ к нему с помощью $ смотреть смотрите пример:

var app = angular.module('app', []); 
 

 
app.controller('firstCtrl', function($scope){ 
 

 
    
 
    $scope.$watch('createAssetForm.$valid', function(value){ 
 
    //value is your createAssetForm.$valid 
 
    $scope.isValid = value 
 
    
 
    }); 
 

 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app"> 
 
<div ng-controller="firstCtrl"> 
 
    
 
    Is form valid: {{isValid}} 
 
    <accordion close-others="oneAtATime"> 
 
      <accordion-group is-open="status.open"> 
 

 
     <ng-form name="createAssetForm" onsubmit="" novalidate class="form-horizontal" >      
 
        <fieldset> 
 
         <div class="form-group"> 
 
          <label class="col-lg-2 control-label" for="AssetName">AssetName</label> 
 
          <div class="col-lg-10"> 
 
           <div class="error error-msg" ng-show="(createAssetForm.AssetName.$dirty && createAssetForm.AssetName.$invalid && (!createAssetForm.AssetName.$focused))"> 
 
            <small class="error" 
 
              ng-show="createAssetForm.AssetName.$error.minlength"> 
 
             Project name is required to be at 
 
             least 3 characters 
 
            </small> 
 
            <small class="error" ng-show="createAssetForm.AssetName.$error.maxlength"> 
 
             Project name cannot be longer than 
 
             250 characters 
 
            </small> 
 
           </div> 
 
           <input ng-focus ng-minlength="3" ng-maxlength="250" name="AssetName" class="form-control" type="text" placeholder="Asset Name" ng-model="NewAsset.AssetName" /> 
 
          </div> 
 
         </div> 
 
        </fieldset> 
 
</ng-form> 
 

 
     </accordion-group> 
 
    </accordion> 
 

 
     </div> 
 
    </div>

Смежные вопросы