2016-02-10 2 views
0

В основном у меня есть два Divs на странице, из которых только один будет виден за раз. У меня есть текстовый ввод, помещенный внутри моего первого div, который показан по умолчанию. Теперь, если первый div скрыт, и показан второй DIV, Я хочу поменять текст ввода DOM на второй DIV. Идентификатор textinput и значение, которое он имеет, должны быть удалены при замене. У меня есть ссылка на ввод текста, который нужно поменять в моей настраиваемой директиве (ref-comp в нижеприведенном фрагменте). Как я могу достичь этого в angularJS? Пожалуйста, помогите мне здесь.Перемещение DOM в Angular JS

<div id="1"> 
    <div id ="container1"> 
     <input type="text" id="text1"> 
     </input> 
    </div> 
    <div id ="container1"> 
     <ref-comp id="ref1" refId ="text1"> 
     </ref-comp> 
    </div> 
</div> 
+0

Вы только хотите обменять значения? или HTML. –

+0

Я хочу поменять текст ввода DOM с Div 1 на Div 2 и наоборот, когда отображается соответствующий DIV. – LNarine

ответ

0

Пожалуйста, посмотрите на это, возможно, это поможет.

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

 
app.controller('IndexCtrl', function($scope) { 
 
$scope.showme = true; 
 
    
 

 
});
<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 id="1" data-ng-app="myApp" data-ng-controller="IndexCtrl"> 
 

 
    <div id ="container1" ng-show="showme"> 
 
     value of text filed of div 1: {{divAVarialbe.text1}} <br> 
 
     <input type="text" id="text1" ng-model="divAVarialbe.text1"> 
 
     </input> 
 
    </div> 
 
    <div id ="container1" ng-show="!showme"> 
 
     value of text filed of div 2 : {{divBVarialbe.text1}} <br> 
 
     <input type="text" id="text1" ng-model="divBVarialbe.text1"> 
 
     <ref-comp id="ref1" refId ="text1"> 
 
     </ref-comp> 
 
    </div> 
 
<button ng-click="showme = !showme" ng-show="!showme">Show div 1</button> 
 
<button ng-click="showme = !showme" ng-show="showme">Show div 2</button> 
 
</div>

Вы можете использовать нг-шоу, чтобы поменять местами Диву и и область видимости переменных для доступа к входному поданным в DOM. Предположим, что если использование переменной области видимости позволяет сказать divAVarialbe и divBVariable. то для DIV divAVarialbe будет использовать то вся модель ребенок будет идти внутри divAVarialbe так что ваша ул данные будут

divAVarialbe = { «text1»: «значение textfild», «otherModel»: «» ,. ..}

же для Div B.

Таким образом, вы можете дифференцировать DOM. Он основывается на том, насколько вы знаете об объекте. Предположим, что он похож на шаблон mvc, тогда его будет легко закодировать.

возможно, это поможет.

+0

Я отлично разбираюсь в DIV hide show logic с помощью AngularJS, но при показе DIV 2 в этом примере мне нужно поменять текст ввода, первоначально размещенный в DIV1. – LNarine

+0

см. Отредактированный код, который может вам помочь – Rahul

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