Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/visual-studio-2010/4.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模型不是第一次更新_Javascript_Angularjs - Fatal编程技术网

Javascript ng模型不是第一次更新

Javascript ng模型不是第一次更新,javascript,angularjs,Javascript,Angularjs,我有一个与ng模型绑定的复选框: <input type="checkbox" ng-change="toggleAll(globalChecked)" ng-model="globalChecked"> 而Toggall将获取全局检查值并处理控制器中的其他逻辑: $scope.toggleAll = function(val) { if ($scope.objects == undefined) { return } for (var

我有一个与ng模型绑定的复选框:

<input type="checkbox" ng-change="toggleAll(globalChecked)" ng-model="globalChecked">

而Toggall将获取全局检查值并处理控制器中的其他逻辑:

$scope.toggleAll = function(val) {
    if ($scope.objects == undefined) {
        return
    }

    for (var i = 0; i < $scope.objects.length; ++i) {
        $scope.objects[i].checked = val;
    }
}
$scope.toggleAll=函数(val){
如果($scope.objects==未定义){
返回
}
对于(变量i=0;i<$scope.objects.length;++i){
$scope.objects[i].checked=val;
}
}
但是,第一次,当我单击复选框时,toggall被调用,但是val(或globalChecked值)仍然为false


我只是想知道我错过了什么吗?

看来你没有错过任何东西,这对我来说很好。下面是一个plunker示例:

如果第一次不起作用,请确保初始化代码中第一个复选框的值(
ng model=“globalChecked”


$scope.objects=[];
对于(变量i=0;i<100;i++){
if(!$scope.objects[i])
$scope.objects[i]={checked:false};
}
$scope.checkAll=函数(val){
对于(变量i=0;i<100;i++){
log($scope.objects[i]);
$scope.objects[i].checked=val;
}
}

angular的哪个版本?复选框最初是否已选中?这应该很好用。一个JSBin/Plunker会很感激的。只要试过这个,它就很好用了。你是如何申报全球检查的?我刚刚做了$scope.globalChecked,没有将它设置为任何值,它工作正常。你能给我一个plunker吗?这并不能回答这个问题。若要评论或要求作者澄清,请在其帖子下方留下评论。@ChrisPratt,这怎么不能提供答案?问题是作者是否遗漏了什么。在plunker中测试代码后,答案似乎是否定的,可能还有另一个变量在起作用。这是基于评论自动生成的评论,但本质上告诉OP“我没有看到任何错误”并不是答案,即使他们的问题措辞拙劣,暗示这确实“回答”了它。你仍然有一个评论,然后应该提示OP改写他们的问题或提供更多细节,这样你就可以给他们的问题一个真实的答案。