Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ng checked为真但未启用?_Javascript_Angularjs - Fatal编程技术网

Javascript ng checked为真但未启用?

Javascript ng checked为真但未启用?,javascript,angularjs,Javascript,Angularjs,我的数据看起来像是,每个条目都是日志,来自SupportService 在我的控制器中,我将其用作 $scope.logs = SupportService.logs; $scope.selectedLogs = ["file C"]; 这就是我在HTML表格上打印它们的方式 <table class="logsTable"> <thead> <tr> <th>#</th>

我的数据看起来像是,每个条目都是日志,来自SupportService

在我的控制器中,我将其用作

$scope.logs = SupportService.logs;
$scope.selectedLogs = ["file C"];
这就是我在HTML表格上打印它们的方式

    <table class="logsTable">
        <thead>
        <tr>
            <th>#</th>
            <th>File Name</th>
            <th>Last Updated</th>
            <th>Size</th>
            <th>Location</th>
        </tr>
        </thead>
        <tr ng-repeat="log in logs">
            <td>
                <input type="checkbox"
                       ng-checked="selectedLogs.indexOf(log.fileName) != -1"
                       ng-click="toggleSelect(log)">
            </td>
            <td>{{log.fileName}}</td>
            <td>{{log.lastUpdated}}</td>
            <td>{{log.size}}</td>
            <!--<td>{{log.location}}</td>-->
            <td>{{selectedLogs.indexOf(log.fileName) != -1}}</td>
        </tr>
    </table>
即使其中一个条目为true,也不会选中该复选框。我看到的只是


这里有什么问题?

我想您可能在引用模型时出错了。我简化了您的示例,删除了该服务,这里有一个工作示例:

因此,控制器或服务中可能存在某些内容。。。您是否可以尝试直接在控制器中定义示例数据,如下所示

$scope.logs = [{
        "fileName": "file A",
        "location": "logs/fileA",
        "size": "20000",
        "lastUpdated": "May 04, 2015 09:21PM"
    },{
        "fileName": "file B",
        "location": "logs/fileB",
        "size": "4034300",
        "lastUpdated": "May 01, 2015 01:21PM"
    },{
        "fileName": "file C",
        "location": "logs/fileC",
        "size": "53437000",
        "lastUpdated": "May 02, 2015 03:11PM"
    }
];

若这并没有帮助,请发布完整的服务正文,并跳过不相关的部分

不,我并没有在这里使用ngModel每个重复的元素都有自己的作用域,所以请尝试$parent.$parent.selectedLogs.indexOflog.fileName!=-1.这对@R3tep也没有帮助。奇怪的是,当我刷新页面时,我看到所有的页面都启用了,然后突然消失了。他们像你一样使用ng repeat。我把你的示例放在一个plunker中,它可以正常工作:这应该是一个注释,而不是一个答案,因为它实际上并没有回答问题
$scope.logs = [{
        "fileName": "file A",
        "location": "logs/fileA",
        "size": "20000",
        "lastUpdated": "May 04, 2015 09:21PM"
    },{
        "fileName": "file B",
        "location": "logs/fileB",
        "size": "4034300",
        "lastUpdated": "May 01, 2015 01:21PM"
    },{
        "fileName": "file C",
        "location": "logs/fileC",
        "size": "53437000",
        "lastUpdated": "May 02, 2015 03:11PM"
    }
];