2017-03-17 8 views
0

こんにちは、私は、選択したデータタイプのブートストラップに基づいて要素を動的に追加しています。問題は常にhtml要素を削除し、新しい要素を追加するためです。フォームエラーコレクションは以前のエラーを保持し、単一のhtml要素に対して複数のエラーを表示します。ここで間違っているものを手伝ってください。要素の角度の形を動的にレンダリングする

var addDynamicControl = function (fieldInformation) { 

        if (angular.element("#" + scope.advanceSearchItem.searchItemIndex).length) { 
         angular.element("#" + scope.advanceSearchItem.searchItemIndex).remove(); 
         if (ctrl.advanceSearchForm[fieldInformation.SearchCriteriaName]) 
          ctrl.advanceSearchForm[fieldInformation.SearchCriteriaName].$setValidity("required", false); 
        } 
        var angularForm = angular.element("#" + scope.formName); 
        var result = angularForm.append(getTemplateByType(fieldInformation)); 
        $compile(result)(scope); 
       }; 

enter image description here

答えて

0

フォーム要素を挿入する前に、先行入力をクリアする必要があります。試してみてください

var addDynamicControl = function(fieldInformation) { 

    if (angular.element("#" + scope.advanceSearchItem.searchItemIndex).length) { 
     angular.element("#" + scope.advanceSearchItem.searchItemIndex).remove(); 
     if (ctrl.advanceSearchForm[fieldInformation.SearchCriteriaName]) 
      ctrl.advanceSearchForm[fieldInformation.SearchCriteriaName].$setValidity("required", false); 
    } 
    $timeout(function() { 
     angular.element('.typeahead') 
      .typeahead('val', ''); 
    }, 0); 

    var angularForm = angular.element("#" + scope.formName); 

    var result = angularForm.append(getTemplateByType(fieldInformation)); 
    $compile(result)(scope); 
}; 
関連する問題