我正在使用一个调用 clickLoadMorePosts 的按钮,它有两个参数,重要的一个是 date ,此按钮触发下面的功能。
在回复中,我收到的javascript代码更新了按钮参数中的 date ,并且它正在更新,但当我再次点击该按钮时,范围即使在html代码中更新了这个新日期(我通过Google Chrome检查员查看),也是第一次约会,而不是我在回复中的日期。
我认为问题是因为$ scope没有更新新内容,因此没有采用新的日期。
我还读到我应该在某些地方使用$ apply,但是因为$ http使用$ apply而出现错误。
感谢帮助和见解!
HTML
<span id="loadMorePosts" ng-click="clickLoadMorePosts({{$idAccount}},'{{$date}}')"> Load more content </span>
JAVASCRIPT
function TodoCtrl($scope, $http ) {
$scope.clickLoadMorePosts = function(idAccount, date) {
$http.post("loadPersonalPosts", {'idAccount': idAccount, 'date': date} )
.success(function (data) {
$('#postLoader').append(data);
}).error(function (data) {
alert("error");
});
};
}
答案 0 :(得分:2)
您应该将响应数据分配给范围变量,在页面中,您应该像{$ scope.data一样使用。而不是通过追加来操纵DOM。