使用Angular.js

时间:2016-02-25 05:31:11

标签: javascript angularjs

尝试使用Angular.js设置DB值时出现以下错误。

  

错误:

TypeError: index.push is not a function

我正在解释下面的代码。

<tr ng-repeat="d in days">
<td>{{d.day}}</td>
<td> <select class="form-control"  id="catagory" ng-model="catagory" ng-options="cat.name for cat in listOfCatagory track by cat.value " ng-change="removeBorder('catagory',$index,catagory.value);" >
 </select></td>
<td>
<select class="form-control"  id="subcatagory+$index" ng-model="subcatagory[$index]" ng-options="sub.name for sub in listOfSubCatagory+$index track by sub.value " >
<option value="">Select Subcategory</option>
</select>

</td>
<td><input type="text" name="comment" id="comment" class="form-control oditek-form" placeholder="Add Comment" ng-model="comment" ng-keypress="clearField('comment');"></td>
</tr>

当用户从第一个下拉列表中选择值时,下面的部分正在执行。

$scope.removeBorder=function(id,index,catvalue){
        var catdata=$.param({'action':'subcat','cat_id':catvalue});
        $http({
            method:'POST',
            url:"php/customerInfo.php",
            data:catdata,
            headers: { 'Content-Type': 'application/x-www-form-urlencoded' }
        }).then(function successCallback(response){
            //console.log('sub',response.data);
            angular.forEach(response.data,function(obj){
                var data={'name':obj.subcat_name,'value':obj.subcat_id};
                $scope.listOfSubCatagory+index.push(data);
            })
        },function errorCallback(response) {
        })
    }

我在此$scope.listOfSubCatagory+index.push(data);行收到错误。请帮我解决此错误。

1 个答案:

答案 0 :(得分:0)

您正在使用 ng-change =&#34; removeBorder(&#39; catagory&#39;,$ index,catagory.value);&#34;

其中 $ index 返回列表中元素的索引,这是一个整数

您正试图在整数上调用.push()函数,这就是您收到此错误的原因。