ng-repeat和选中的复选框

时间:2018-07-19 22:35:43

标签: javascript php angularjs

我有一个复选框列表,需要根据PHP数组将其标记为已选中

<?
    $selected ['1', '100', '250'];
?>

<script>
 $scope.articles = [
    "1",
    "2",
    "100",
    "250",
    "500"
]
</script>

<ul>
    <div ng-repeat="article in articles">
        <input type="checkbox" ng-checked="?" id="{{article}}">
    </div>
</ul>

问题是我不知道如何用angularjs部分“连接” php数组。我可以回显php数组,但不确定如何将其传递给JS

谢谢。

1 个答案:

答案 0 :(得分:0)

同意@Ele的评论,您应该将其保存在angularjs服务中,并从后端获取它。在您的服务中有一个方法,将article.Id传递给它,该服务将根据您已设置的复选框检查数组中是否存在传递的ID。

模板:

<div ng-repeat="article in articles">
   <input type="checkbox" ng-checked="isArticlePresent(article.Id)" id="{{article}}">
</div>

控制器

$scope.isArticlePresent = function(id){
return service.isArticlePresent(id);
};

服务

this.isArticlePresent = function (id) {
    //Write your logic, and return true/false
}