2016-07-28 3 views
3

У меня есть текстовое поле в моем приложении, как так:Угловой ошибка проверки TextArea

<textarea type="text" class="form-control" name="bioBackground" ng-model="obj.background" value="obj.background" ng-change="autosave()" maxlength="1500" required></textarea> 

Это поле требуется и, как вы можете увидеть, что я добавил необходимый тег в коде. Но этот требуемый тег вызывает ошибки с помощью Angular.

Например:

Если я печатаю в поле и забой и удалить весь текст он удаляет объект из области. смотри пример ниже:

Перед реверсом

Вы можете увидеть фон переменная находится в области видимости.

enter image description here

После реверса и удаление текста:

Вы можете увидеть переменный фон исчез из сферы.

enter image description here

происходит только если я использую обязательный тег. Если я не использую требуемый тег, он отлично работает и даже после удаления всего текста фоновая переменная остается в пределах области действия.

Что я делаю неправильно.

+0

Это объект, который содержит '' experience' и background', создается в контроллере? – KreepN

+0

@KreepN да, как и '$ scope.obj = {}' – Skywalker

+0

Просто проверил сам, и это некоторые сумасшедшие вещи. Невозможно найти документацию по указанной проблеме. Надеюсь, что у кого-то еще есть некоторые идеи – KreepN

ответ

0

его рабочий, фон не определен, удаляя весь текст, используя обратное пространство.

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

 
app.controller('MainCtrl', function($scope) { 
 
    $scope.name = 'World'; 
 
    $scope.obj = { 
 
"experience":{ 
 
"field0":"asdf", 
 
"field1":"asss" 
 
}, 
 
"background":"" 
 
}; 
 
console.log($scope.obj); 
 
$scope.autosave=function(){ 
 
console.log($scope.obj); 
 
    
 
} 
 

 
});
<!DOCTYPE html> 
 
<html> 
 

 
    <head> 
 
    <meta charset="utf-8" /> 
 
    <title>AngularJS Plunker</title> 
 
    <script>document.write('<base href="' + document.location + '" />');</script> 
 
    <link href="style.css" rel="stylesheet" /> 
 
    <script data-semver="1.4.9" src="https://code.angularjs.org/1.4.9/angular.js" data-require="[email protected]"></script> 
 
    <script src="app.js"></script> 
 
    </head> 
 

 
    <body ng-app="plunker" ng-controller="MainCtrl"> 
 
    <textarea type="text" class="form-control" name="bioBackground" ng-model="obj.background" value="obj.background" ng-change="autosave()" maxlength="1500" required></textarea> 
 
    </body> 
 

 
</html>