Как скопировать значение входного текста в другие входные тексты - PullRequest
0 голосов
/ 26 июня 2019

Как скопировать значение входного текста в другие элементы ввода текста в AngularJS 1.X

Но у каждого входа есть свое свойство в контроллере

Я уже пробовал

<code> <div class="paramWrap"> // copy from here
    <label for="accoubntDis">Account Discount</label>
        <input id="accoubntDis" type="text" class="form-control" ng-model="accoubntDis">
 </div>

 <pre>{{accoubntDis}}
// отображается только это

Что я вижу на самом деле, что отображается только {{accoubntDis}}

почему value/ng-value={{accoubntDis}}/"accoubntDis" не работал в <input .... ??

enter image description here

enter image description here

Нужно ли для этого использовать какие-либо функции JS на стороне контроллера?

Ответы [ 5 ]

1 голос
/ 26 июня 2019

Самый простой и лучший подход заключается в использовании ng-change вместо ng-значения.

HTML-код:

<input type = "text" ng-model = "first" ng-change = "changeSecond()"/>
<input type = "text" ng-model = "second"/>

Угловой: JS соответствующий код

$scope.changeSecond = function() {
    $scope.second = $scope.first;
}
1 голос
/ 26 июня 2019

Я пробовал с "ng-value", оно работает в угловых 1,5 и выше.Если ваш угол меньше 1,5, вы можете перейти к следующему подходу.

  • Так что лучше написать вызов функции при изменении поля ввода1, и в этой функции назначить значение поля1 для поля2.Рассмотрим приведенный ниже пример:

HTML:

<input type="text" ng-model="data" ng-change="updateField()">
<input type="text" ng-model="meta">

JS:

  $scope.data;
  $scope.meta;
  $scope.updateField= function(){
      $scope.meta=$scope.data;
  }
0 голосов
/ 26 июня 2019

Используйте директиву ng-value.

<input ng-value="accoubntDis" />

См. Этот API документ .


BTW , так как вы используете ng-model, value будет переопределено, так что кажется, что оно не работает.

<input ng-model="accoubntDis" />
0 голосов
/ 26 июня 2019

Используйте директиву ng-value.

<!DOCTYPE html>







 
    
        
 
{{accoubntDis}}
var app = angular.module ('myApp', []); app.controller ('myCtrl', function ($ scope) { $ scope.accountDis = "Hello World!"; $ Scope.accoubntDis = 123; });

В этом примере показано, как использовать выражения AngularJS для установки значения поля ввода.

0 голосов
/ 26 июня 2019

Для ввода не требуется {{}}, просто введите value = "accoubntDis" .

<code>        <!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>

<div ng-app="myApp" ng-controller="myCtrl">

<div class="paramWrap"> // copy from here
    <label for="accoubntDis">Account Discount</label>
    <input id="accoubntDis" type="text" class="form-control" ng-model="accoubntDis" ng-change="calculate()">
</div>

 <pre>{{accoubntDis}}
// отображается только этоO365 Exchange нелицензионная скидка G Suite / O365 Обмен приостановлен / архивирован var app = angular.module ('myApp', []);app.controller ('myCtrl', function ($ scope) {$ scope.accoubntDis = "100"; $ scope.accoubntDis2 = $ scope.accoubntDis * 2; $ scope.accoubntDis3 = $ scope.accoubntDis / 2; $ scope.рассчитать = функция () {$ scope.accoubntDis2 = $ scope.accoubntDis * 2; $ scope.accoubntDis3 = $ scope.accoubntDis / 2;}});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...