0

사용자가 다른 버튼을 클릭하면 다른 양식을 표시해야합니다. 사용자는 다른 양식을 전환하고 삽입 된 이전 데이터를 읽을 수 있어야합니다. 안타깝게도 ng-include는 범위를 보존하지 않지만 표시된 데이터를 새로 고치는 것처럼 보입니다.Ng- 분실 범위 포함

코드 : 다른 버튼과 .urlForm에 사용자가 클릭에

... 
<div ng-include src="formToBeOpened.urlForm"></div> 
... 

formToBeOpened 변화는 NG와 데이터를 보존하는 방법 ("option2.html"예 "option1.html")

문자열입니다 -포함?

답변

0

봅니다 솔루션이 당신을 도울 것입니다

function TodoCtrl($scope) { 
 
    $scope.templateUrl = 'form1.html'; 
 
    $scope.changeForm = function(url){ 
 
    $scope.templateUrl = url; 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app> 
 
    <div ng-controller="TodoCtrl"> 
 
     <script type="text/ng-template" id="form1.html"> 
 
      <h2>Hello1</h2> 
 
     </script> 
 

 
     <script type="text/ng-template" id="form2.html"> 
 
      <h2>Hello2</h2> 
 
     </script> 
 
     
 
     <div ng-include="templateUrl"></div> 
 
     <button ng-click="changeForm('form1.html')">Form1</button> 
 
     <button ng-click="changeForm('form2.html')">Form2</button> 
 
    </div> 
 
</div>

희망 다음 사용할 수 있습니다.