Я создаю одну форму с помощью Bootstrap & AngularJS. Я использую редактор CK на своей странице как textarea
. Но я не могу получить значение textarea
, в то время как значение входного текстового поля легко фиксируется в моем контроллере AngularJS. Ниже приведен фрагмент кода:Неопределенное значение из области текста в AngularJS
HTML страницы:
<div class="container">
<div ng-controller="controller">
<form role="form">
<label for="sd"><b>Short Description: </b></label>
<input ng-model="sdesc" class = "form-control input-xxlarge" type = "text" placeholder ="Provide a short description here."/>
<br/>
<label for="dt"><b>Details: </b></label>
<textarea ng-model="details" class="form-control" name="details_editor" id="details_editor"></textarea>
<br/>
<button class = "btn btn-primary" ng-click="submitted()">Ask It!</button>
<script>
CKEDITOR.replace('details_editor');
</script>
</form>
</div>
<br/>
<hr>
</div>
JS
app.controller('controller', ['$scope', function($scope){
$scope.submitted = function(){
var sdesc = $scope.sdesc;
var details = $scope.details;
alert($scope.details);
};
}]);
Оповещение показывает undefined
для значения текстового поля.
Пожалуйста, помогите мне решить проблему.
Я думаю, что CK заменяет текстовое поле, проверяет DOM после отображения страницы или делает это как '$ timeout (function() {console.log ($ scope.details)}) ', чтобы проверить, является ли это проблемой переваривания – maurycy
Эй, @maurycy - Я на самом деле довольно новичок в веб-разработке. Так что, пожалуйста, расскажите мне больше о том, что делать. После рендеринга страницы, когда я проверяю элемент, я вижу, что текстовая область представлена каким-либо другим элементом DOM, который создается динамически самим редактором CK. Итак, каков правильный способ получить данные? – coderx
Если вы выполняете 'console.log' внутри' $ timeout' в соответствии с моим комментарием, он должен работать, и причина этого в том, что '$ timeout' в угловом графике цикл' $ digest' (вы должны прочитать об этом более подробно если вы новичок в веб-разработке - это угловой конкретный процесс) – maurycy