Javascript 角度选择-a.forEach不是一个函数
使用Angular Selected允许国籍的多选下拉列表。 我犯了一个错误 “a.forEach不是一个函数” 无论您选择了一个、两个或零个选项,都会发生此错误 我已经看过这篇文章了 但是,我选择的值已经是一个数组,因此它在该问题上不提供任何帮助 这是我的htmlJavascript 角度选择-a.forEach不是一个函数,javascript,jquery,angularjs,foreach,angular-chosen,Javascript,Jquery,Angularjs,Foreach,Angular Chosen,使用Angular Selected允许国籍的多选下拉列表。 我犯了一个错误 “a.forEach不是一个函数” 无论您选择了一个、两个或零个选项,都会发生此错误 我已经看过这篇文章了 但是,我选择的值已经是一个数组,因此它在该问题上不提供任何帮助 这是我的html <li class="form-row"> <span class="label"> <label for="nation"&
<li class="form-row">
<span class="label">
<label for="nation">Nationality</label>:
</span>
<div class="field country">
<select
chosen
multiple
ng-model='person.nation'
ng-options='c.name as c.name for c in countries'
id="nation"
data-select-max="2"
data-token="Nationalities"
data-placeholder="- Select your nationalities -">
</select>
</div>
</li>
任何建议都将不胜感激。数组对象的属性应按如下方式分配:
id:“1”,name:“United States”
,而不是id=“1”
。将等号(=)替换为冒号(:)
此外,还应按以下方式使用forEach函数:
angular.forEach($scope.countries, function(key, value){
// your code here
});
而不是作为数组的函数:
$scope.countries.forEach(…)
它假设countries是一个数组,{}不是数组。如果我执行“console.log($scope.countries.constructor==array)”,它将返回trueYou't's right。没有看到括号。这里有一些很好的建议:您是正确的,但是更改它并不会删除forEach错误!我认为在您的代码中,您正在调用forEach,因为它是数组本身的一个函数。正确的用法是angular.forEach($scope.countries,function(key,value){//your code here})代码>有关更多详细信息,请参阅forEach函数是从所选库调用的,而不是作为我自己实现的一部分。它被称为使用“angular.forEach”。这个库可以在我文章的第一个链接中查看。你能分享整个代码和标记吗?因为我不能用我上面提到的任何其他方式复制你的问题。
angular.forEach($scope.countries, function(key, value){
// your code here
});