我使用'jquery-ui-1.10.4.custom.js'进行自动完成。但是它抛出了一个错误TypeError: this。源代码不是函数'
Html代码
<input type="text" ng-model="srchfname" auto-complete>
AngularJs代码
app.directive('autoComplete', ['$http',function($http) {
return {
restrict: 'A',
link: function(scope, elem, attr, ctrl) {
$(elem).autocomplete({ source: $http
.get('rest/getFirstName?cd='+(new Date()).getTime())
});
}
}}])
当页面加载时,'get'请求成功触发(我已经检查了firebug)。
春代码
@RequestMapping(value = "/getFirstName", method = RequestMethod.GET, produces = "application/json")
public @ResponseBody
List<String> getFirstName() {
List<String> FnameList = new ArrayList<String>();
for(int i=0;i<MyList.size();i++)
{
FnameList.add(MyList.get(i).getFirstName());
}
return FnameList;
}
MyList已经被硬编码数据填充。请告诉我哪里错了
不使用Function作为'source'选项,而是使用'String'选项,它适合我。并对弹簧控制器进行了更改。
指令代码source: "rest/getFirstName"
Spring code
@RequestMapping(value = "/getFirstName", method = RequestMethod.GET, produces = "application/json" ,params="term")
public @ResponseBody
List<String> getFirstName(@RequestParam("term") String term)
{
}
和其他代码是一样的。