2016-07-07 1 views
0

각 컨트롤의 값을 포함한 전체 양식 (또는 div) HTML을 가져오고 싶습니다. 나는 innerHtml/outerHtml을 시도했다. 그들은 HTML을 제공하지만 컨트롤에 대한 값을 얻을 수는 없습니다.속성 및 양식 값을 포함한 전체 HTML을 얻는 방법

비즈니스 시나리오 : 다른 html 양식을로드하기위한 자리 표시 자 ("loadHtml")가있는 방문 페이지가 있습니다. 사용자 요청에 따라 서버에서 표준 HTML 양식을 검색하고 "loadhtml"div 안에로드하고 사용자에게 다양한 필드의 전체 데이터를 제공합니다. 사용자가 데이터 입력을 완료하고 "저장"을 클릭하면 값과 함께 HTML (텍스트 상자 & 확인란 포함)을 추출하여 서버로 보내 HTML 양식으로 저장하려고합니다.

<div id="loadHtml"></div> 

<div class="form-group"> 
    <div class="col-sm-offset-4"> 
    <button class="btn btn-success" ng-click="save()">Save</button> 
    </div> 
</div> 
+0

가능한 복제 [?하려면 어떻게 값을 포함하여 입력 컨트롤의 innerHTML] (http://stackoverflow.com/questions/14357222/input-control-in-the-value-of-the-get-of-the-value를 얻는 방법) –

+0

이미 서버에서 잡아 당기고 있다면 다시 게시하여 저장하십시오. –

+0

폼의 submit 이벤트에서'innerHTML'을 얻습니다. – Iceman

답변

0

글쎄, 난 당신이 다른 페이지의 전체 HTML을 얻고 그것을 보여주고 싶은 잘 이해하면, 그래서 여기에 방법 :

당신은 HTML 페이지에 $http.get를 실행하고 표시 할 수 있습니다 단순히 사용 ngSanitize입니다. 여기

은 예입니다 :

(function() { 
 
    "use strict"; 
 
    angular.module('app', ['ngSanitize']) 
 
    .controller('mainCtrl', function($scope, $http) { 
 
     $scope.html = ''; 
 
     $scope.get_html = function() { 
 
     $http.get('https://httpbin.org/').then(
 
      function(response) { 
 
      $scope.html = response.data; 
 
      }, 
 
      function(response) { 
 
      console.log(response); 
 
      }); 
 
     } 
 
    }); 
 
})();
<!DOCTYPE html> 
 
<html ng-app="app"> 
 

 
<head> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.min.js"></script> 
 
    <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular-sanitize.min.js"></script> 
 
</head> 
 

 
<body ng-controller="mainCtrl"> 
 
    <span ng-bind-html="html"></span> 
 
    <button type="button" ng-click="get_html()">Get entire HTML</button> 
 
</body> 
 

 
</html>

관련 문제