【发布时间】:2015-07-22 14:49:40
【问题描述】:
使用此代码,我总是得到 TypeError: Cannot read property 'success' of undefined。 我也尝试过使用 .then 而不是 .success 但我得到了同样的错误。 经过十多个小时的谷歌搜索后,我有点绝望......
HTML:
<div ng-controller="search_interest" layout="column">
<md-chips ng-model="ctrl.selectedVegetables" md-autocomplete-snap md-require-match>
<md-autocomplete
md-selected-item="selectedItem"
md-search-text="searchText"
md-items="item in getInterest(searchText)"
md-item-text="item.name"
placeholder="Search for a vegetable">
<span md-highlight-text="searchText">{{item.name}} :: {{item.type}}</span>
</md-autocomplete>
<md-chip-template>
<span>
<strong>{{$chip.name}}</strong>
<em>({{$chip.type}})</em>
</span>
</md-chip-template>
</md-chips>
</div>
还有js:
var app = angular.module('autocomplete_app', ['ngMaterial']);
app.controller('search_interest',
function($scope, $http){
$scope.searchText = '';
$scope.selectedItem = undefined;
function getInterest($scope){
$http.get("someurl.php?query=" + $scope.searchText)
.success(function(data){
$scope.interest = data;
console.log('data', JSON.stringify(data));
});
};
});
【问题讨论】:
-
我认为代码已经正确。你能把你的代码放在 Plunkr 上吗?
-
这里plnkr.co/edit/aWtsG67zTgflF7JUcjSa。我使用了真正的 http 查询 url(正确的查询可以是“mon”)
-
首先你的 plunker 有一个问题,关于 javascript 文件导入不是 script.js 是 app.js
-
对不起...你说得对。现在是 app.js。但它还没有工作。如果我打电话给disetti.it/inc/users/search_interest.php?query=mon 我会得到结果...
-
plnkr.co/edit/MAXFMEfVGpI0DEBCcVzy 这是我不知道为什么我不能将其添加到我的回复中的 plunker。请一些编辑将其添加到答案中
标签: angularjs http-get md-autocomplete