Нет обнаружения AngularJS после дописывания DIV в JQuery
$('button.op_comm_now').one('click', function() {
$(this).parent().before('<div class="comment_box_all" ng-controller="votesController"></div>');
}).click(function() {
var panel = $(this).closest('.area_comm_tex');
var commentBox = panel.prev('.comment_box_all');
var content = document.createElement("span");
content.innerHTML = panel.find('.text_area').val().replace(/(\n|\r|\r\n)/g, '<br>');
commentBox.append('<div class="comment_user"><div ng-repeat="vote in votes"> <div class="comment_note_11" ><a ng-click="incrementLikes(vote)" class="vote_comment_11"></a><span class="num_vote_comm_11">{{vote.Likes}}</span><a ng-click="decrementLikes(vote)" class="vote_dis_like_comm_un11"></a></div></div><div class="content_text_user_ans"></div></div>');
commentBox.find('.content_text_user_ans').last().html(content);
});
var myApp = angular.module("myApp", []);
myApp.controller("votesController", function($scope) {
var votes = [{
Likes: "0"
}, ];
$scope.votes = votes;
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container" ng-app="myApp">
<div class="area_comm_tex">
<textarea class="text_area" placeholder="Add comment"></textarea>
<button class="op_comm_now">Add text</button>
</div>
</div>
Эй, ребята, У меня есть небольшая проблема, потому что AngularJS в данном случае не "обнаружить". Попробуйте нажать button
и появится {{vote.Likes}}
, но должно появиться «0», как и в моем $scope.votes
. Спасибо за помощь
в вашем commandBox вы разбираете строку HTML кода с помощью '«»' кавычки, где вы должны использовать 'для многострочных HTML код в JS. – Smit